|Project Name||Stars||Downloads||Repos Using This||Packages Using This||Most Recent Commit||Total Releases||Latest Release||Open Issues||License||Language|
|Ace (Ajax.org Cloud9 Editor)|
|Theia||18,451||a day ago||1,361||epl-2.0||TypeScript|
|Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.|
|Gitpod||11,557||21 minutes ago||84||March 27, 2022||712||agpl-3.0||Go|
|The developer platform for on-demand cloud development environments to create software faster and more securely.|
|Diagram Maker||2,347||3||5 months ago||6||February 27, 2022||2||apache-2.0||TypeScript|
|A library to display an interactive editor for any graph-like data.|
|✨☁️📁✨ Cloud Commander file manager for the web with console and editor.|
|Web labeling tool for bitmap images and point clouds|
|Dark||1,419||an hour ago||223||other||F#|
|Darklang main repo, including language, backend, and infra|
|Edtr Io||705||3||28||a month ago||66||March 30, 2022||6||mit||TypeScript|
|Edtr.io is an open source WYSIWYG in-line web editor written in React. Its plugin architecture makes Edtr.io lean and extensive at the same time.|
|A self-hosted browser-based cloud IDE, updated from Codiad IDE|
|Spring Boot Book||168||5 years ago||apache-2.0|
|Spring Boot 开源电子书|
This is the main repo for Dark, a combined language, editor, and infrastructure to make it easy to build backends.
This repo is intended to help Dark users solve their needs by fixing bugs, expanding features, or otherwise contributing. Dark is source available, not open source.
Note that the production version of Darklang is not in this repo. That is currently in darklang/classic-dark.
Darklang is currently undergoing an experimental shift to discern how AI technologies will change what Darklang does and how it operates. This is being tracked in https://darklang.com/magicbox.
We are committed to make Dark easy to contribute to. Our contributor docs will help guide you through your first PR, find good projects to contribute to, and learn about the code base.
The easiest way to get to get started is to follow our VSCode setup instructions.
Note that there are contribution instructions - if you just want to try darklang out, sign up at https://darklang.com.
We try to make it really easy to get started. If you have any problems, please ask in Discord and we'll work to fix any issues you have.
We develop Dark within a docker container, so there is not a lot of setup. However, we do need to setup the host system in a few ways to support running scripts, and Docker.
To build and run the server you must have the following installed (and running):
Everything should just work on Linux, so long as you have docker installed and you are using bash 4 or later.
On Windows, you can run Dark in WSL2 (Windows Subsystem for Linux):
core.autocrlfsetting set to
false. You can configure this by running
git config --global core.autocrlf false. If you have already cloned dark, you will need to reclone it.
Now that the pre-requisites are installed, we should be able to build the development container in Docker, which has the exact right versions of all the tools we use.
scripts/builder --compile --watch --test
scripts/builder --compile --watch --test manually is recommended the first time, since it will show you the output of the build process.
These steps apply for all builds, VSCode or using
builderscript will sit open, waiting for file changes in order to recompile
For more info check the CanvasHack readme. But the main steps are:
scripts/ directory is full of scripts. They automatically execute
in the dev container, even if they are run on the host (see
for how this works). Scripts starting with an underscore are primarily intended to be
run by other scripts. Scripts without an underscore are usually intended to be called
by a human, though they are often also called by other scripts as well.
If you've gotten this far, you're now ready to contribute your first PR.
scripts/run-in-docker psql -d devdb
Config files (config/) define all env vars that you can use in Dark code.
All config vars must start with
DARK_CONFIG. Changing a config variable in
config/dev requires restaring the devcontanier.
The VSCode debugger works out of the box with Dark, supporting stepping, breakpoints,
inspecting the stack, etc. You must launch the executable from VSCode for this to
work--attaching does not currently seem to work. You can edit
launch.json to change what tests are run or how other
binaries are started up, which should be straightforward.
You can get a REPL with all of the Dark libraries loaded by running:
These are compiled to create libraries and binaries.
These are put into containers, whose definitions are in containers/. We also have some containers which are defined entirely in their directory (typically, these have a self-contained codebase).