Sandboxes
Sandboxes for running code and tools
Install / Use
/learn @nalgeon/SandboxesREADME
Sandboxes
This repository contains sandboxes for Codapi, a tool for trying programming languages, databases and other software in an isolated environment.
To use a particular sandbox:
- Install Codapi
- Add a sandbox by its name with
./codapi-cli sandbox add <name>, e.g:
./codapi-cli sandbox add lua
./codapi-cli sandbox add go
./codapi-cli sandbox add mariadb
- Restart the Codapi server.
See the available sandboxes below, or try them out.
What is a sandbox
Sandbox = image + box + commands:
- Image as a Docker image containing specific software, like a compiler or a database engine.
- Box is a configuration for running a container: cpu and memory restrictions, file systems, etc.
- Commands are predefined actions you can run in a container.
You can use sandboxes from this repository or create your own.
Programming languages
| Name | Sandbox |
| ------------ | ---------------------------------- |
| shell | Bash/Zsh |
| gcc | C |
| dotnet | C# |
| cpp | C++ |
| c3 | C3 |
| elixir | Elixir |
| dart | Dart |
| go | Go |
| hare | Hare |
| haskell | Haskell |
| java | Java |
| typescript | JavaScript |
| kotlin | Kotlin |
| lua | Lua |
| odin | Odin |
| php | PHP |
| prolog | Prolog |
| python | Python |
| rlang | R |
| raku | Raku |
| ruby | Ruby |
| rust | Rust |
| so | Solod |
| swift | Swift |
| typescript | TypeScript |
| vlang | V |
| zig | Zig |
Databases
Client-server databases like MySQL typically use two images: a server and a client:
- The server container is started when you add a sandbox using
codapi-cli. - The client container is created by the Codapi server on each request.
| Name | Sandbox |
| ------------ | ---------------------------------- |
| chdb | chDB |
| clickhouse | ClickHouse |
| duckdb | DuckDB |
| mariadb | MariaDB |
| mongodb | MongoDB |
| mssql | SQL Server |
| mysql | MySQL |
| postgres | PostgreSQL |
| redis | Redis |
| redka | Redka |
| sqlite | SQLite |
Network & tools
| Name | Sandbox |
| ----------- | ----------------------------------------------------------------------- |
| caddy | Caddy |
| http | HTTPBin |
| latex | LaTeX by Patricio Díaz |
| net-tools | Network tools |
Contributing
Contributions are welcome. For anything other than bugfixes, please first open an issue to discuss what you want to change.
Support
Codapi is mostly a one-man project, not backed by a VC fund or anything.
If you find Codapi useful, please star it on GitHub and spread the word among your peers. It really helps to move the project forward.
★ Subscribe to stay on top of new features.
Related Skills
node-connect
351.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
