Karagäz Sandbox
Heads up!
Keep in mind that Karagöz is still in active development and things might change in the near future. Use in production at your own risk.
Heads up!
Feedback and improvement ideas are welcome by opening issues and discussions in the GitHub repo.
Contributions to the code will be accepted and appreciated as well, once a proper process has been defined.
The idea behind Karagöz Sandbox is to provide a simple UI to work with WebContainers.
If you're not familiar with WebContainers, please check out this tutorial.
In short, it is a browser-based runtime developed by StackBlitz. Once you boot a WebContainer in the browser, you can mount a collection of files within it and spawn processes such as installing dependencies and starting a development server using shell or your favorite package manager(NPM, PNPM and Yarn come preinstalled).
With Karagöz Sandbox on top of that, you will get something like the following:
Heads up!
Due to limitations set in the design of the WebContainer API, only one WebContainer instance can be running at a time. Because of that, starting one of the demos on one of the documentation pages will terminate any previously running demos.
Heads up!
Depending on your use case, you might need a commercial license to use the WebContainer API. Please refer to this page for more information.
Karagöz Sandbox stands on the shoulders of giants to provide as simple, intuitive UI.
Aside from WebContainers, it uses CodeMirror for code editing and Xterm.js to interact with the terminal and display the output of running processes.