soliton4 / nodeMirror

node.js + CodeMirror = powerful ide
Other
155 stars 24 forks source link

logo

tldr

--> screenshots

follow me

--> @nodeMirror

Usage

npm install node-mirror  

node node_modules/node-mirror/bin/nodeMirror.js --port 3000 --dir /home/sol/projects --username sol --password mysupersecretpassword

or global installed

nodeMirror --port 3000 --dir /home/sol/projects --username sol --password mysupersecretpassword
http://127.0.0.1:3000/  

list of options

nodeMirror --help

Description

Create your App completely within the Browser.
Administrate your Server and edit your Code from where ever you are.

nodeMirror is a IDE utilizing CodeMirror.net, pty.js and other cool libraries.

I wrote it to fit the needs of a Developer, especially me, and to make maximal usage of the CodeMirror Editor library.
Giving you a powerful IDE and Admin tool.

Ever asked yourself which Editor you should choose? This is trying to answer that Question once and for all ;)

Requirements

Optional

Customizablity

nodeMirror is open Source. You can easily customize it to your needs.
Everything is a module. If you are missing some functionality let me know or fork it and write a module.

features include:

Files Module

For every Content Type where a CodeMirror Mode exists, a CodeMirror instance will be opened. Also every content Type starting with text/* will be opened using CodeMirror.
For all other files there is a download button or a Hex Editor.
If a file is opened for which no native Text Mode exists it will be opened in a Hex Editor. You can switch between hex view and text view.

Audio / Video Files

Audio and Video files are converted to a web format using avconv. make sure you have it installed. the Video module is beta.

Terminal Module

utilizing pty.js nodeMirror allows you to have several terminals within your browser. the Terminals will stay open when you close your browser window. You can even have the same terminal open on different browsers / machines opening new possibilities for collaboration.

X11 Terminal Module

a videostream encoded with avconv is forwarded to the client. client inputs are forwarded via xdotool.
make sure you have avconv, xprop and xdotool installed.
to activate the x11 module pass --x11terminal on the commandline. this feature stays optional because not every server has a x11 console.

a low latency h264 console is available. i apprechiate test reports of this bleeding edge technology.
pls refer to requirements.

Debug Module

this is early beta. feel free to play with it. basic breakpoint / exception and stepdebugging works.

Web Server

all files you are editing are available under /file/

Security

pass username and password to secure your local files from being hacked

miscellaneous

i am using this for my development so you can expect more.

the npm distribution is a dojo release build
check out my git page to get the development version which you can use to customize NodeMirror
call the build script to make your own version of NodeMirror

cd build  
./build.sh  

to switch of the terminal or the experimental debugger use this command line parameters

node node_modules/node-mirror/bin/nodeMirror.js --no-terminal --no-debug

Special Thanks

screenshots

Folder view Browse your project folder

JavaScript Editor edit JavaScript with online Syntax Check

JavaScript Editor edit huge Files with the Hex Editor

Terminal Yes you can use midnight commander in your Browser with your Mouse(!)
Thank you pty.js

less Have less online help available while testing your less file before saving it parallel as .less and .css file.

html test and analyse your HTML

peg.js try out that cool parser you just wrote

whats to expect for 0.2?

contemporaty

Contributions welcome!

i am a good coder but my gui designs are poor.
while i am happy about all kinds of contributions i especially ask for icon designs / css.

License

BSD