Coding WebIDE(https://ide.coding.net) is a cloud-based IDE developed by Coding Team.You can create your own workspace and develop projects here.WebIDE works fine with Git. You can use Coding、GitHub、BitBucket as your Git repository. Workspaces are powered by Docker Ubuntu containers.The development environment can be saved and shared to your team member.
Please submit issues to corresponding projects, that'll help us make issues tracking easier so that we can provide timely help to you. Submit frontend issues at WebIDE-Frontend and backend issues at WebIDE-Backend.
- Built-In Terminal
- Syntax Highlighting
- Language Tools
- Themes
- Split View
- VIM/Emacs Mode
- Previews
This is the entry point to setup and run the WebIDE Community Edition project. It includes other 3 repos as git submodules.
- WebIDE-Frontend contains frontend code.
- WebIDE-Frontend-Webjars packs frontend to webjar.
- WebIDE-Backend contains backend code.
WebIDE Frontend uses npm for package management, webpack and babel for building. Frontend Webjars & WebIDE Backend use maven3 and java8.
Please ensure you have corresponding tools installed in your environment before build and run the project.
Clone from coding.net:
git clone [email protected]:coding/WebIDE.git
Clone from github.com:
git clone [email protected]:Coding/WebIDE.git
Init and pull submodules:
git submodule init
git submodule update
This will also clone the other 3 repos via git submodule mechanism.
We provide a shell script ide.sh
to ease the process for you.
./ide.sh build # transpile and pack the frontend to webjars
./ide.sh run # start the backend server
Server runs on port 8080 by default, visit localhost:8080 to check it out.
./ide.sh docker build # create docker image
./ide.sh docker run # create and start a container
./ide.sh docker stop # stop container
./ide.sh docker attach # attach container(use control-c to exit)
./ide.sh docker logs # check container's logs
./ide.sh docker exec # create a new Bash session in the container
If you encounter any problem using ide.sh
, try get around it using docker CLI directly.
# create docker image
docker build -t webide/webide
# create and start a container
docker run -p 8080:8080 -v $HOME/.m2:/home/coding/.m2 -v $HOME/.coding-ide-home:/home/coding/.coding-ide-home --name webide webide/webide
# stop container
docker stop webide
# attach container
docker attach --sig-proxy=false webide
# check container's logs
docker logs webide
# create a new Bash session in the container
docker exec -it webide bash