├── .devcontainer ├── Dockerfile └── devcontainer.json ├── .editorconfig ├── .github └── workflows │ ├── ci.yaml │ ├── coverage.yml │ ├── docker-push.yml │ └── flyctl-deploy.yml ├── .gitignore ├── Earthfile ├── Makefile ├── assets ├── animation_opt.gif ├── runner-diagram-details-bg.excalidraw └── runner-diagram-details-bg.png ├── cli └── runner │ ├── client │ └── client.go │ ├── cmd │ ├── langs.go │ ├── root.go │ └── run.go │ ├── main.go │ └── test-files │ ├── test.go │ ├── test.js │ ├── test.py │ ├── test.rs │ ├── test.sh │ └── test.txt ├── docker ├── frontend │ └── Dockerfile ├── mock-server │ └── Dockerfile ├── server-alpine │ └── Dockerfile └── server-debian │ ├── Dockerfile │ └── entrypoint.sh ├── docs └── design.md ├── engine ├── coderunner │ ├── v1 │ │ ├── coderunner.go │ │ ├── language.go │ │ ├── runner.go │ │ └── runner_test.go │ └── v2 │ │ ├── coderunner.go │ │ ├── language.go │ │ ├── language_test.go │ │ ├── runner.go │ │ └── runner_test.go ├── controller │ ├── controller.go │ ├── controller_test.go │ ├── mocks │ │ └── Controller.go │ └── writerremover │ │ ├── blobwriter.go │ │ ├── blobwriter_test.go │ │ └── mocks │ │ └── blobwriter.go ├── integ_test │ └── integration_test.go ├── process │ └── main.go └── runtime │ ├── argprovider.go │ ├── argprovider_test.go │ ├── limiter.go │ ├── limiter_test.go │ ├── mocks │ └── Runtime.go │ ├── runtime_agent.go │ ├── runtime_agent_test.go │ └── types.go ├── flake.lock ├── flake.nix ├── fly.toml ├── go.mod ├── go.sum ├── hack ├── hooks │ └── pre-commit └── kill_server.sh ├── readme.md ├── server ├── api │ ├── v1 │ │ └── types.go │ └── v2 │ │ └── types.go ├── main.go ├── main_test.go ├── mock-server │ └── main.go └── test_server_startup.sh ├── util ├── errors │ └── errors.go ├── files │ └── file.go ├── iohelpers │ ├── helpers.go │ └── helpers_test.go └── print │ └── print.go └── web-frontend ├── .gitignore ├── index.html ├── js ├── config-utils.js ├── editor.js ├── langs-request.js ├── load.js ├── run-request.js └── set-code.js ├── package-lock.json ├── package.json ├── style └── main.css └── webpack.config.js /.devcontainer/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.devcontainer/Dockerfile -------------------------------------------------------------------------------- /.devcontainer/devcontainer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.devcontainer/devcontainer.json -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.github/workflows/ci.yaml -------------------------------------------------------------------------------- /.github/workflows/coverage.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.github/workflows/coverage.yml -------------------------------------------------------------------------------- /.github/workflows/docker-push.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.github/workflows/docker-push.yml -------------------------------------------------------------------------------- /.github/workflows/flyctl-deploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.github/workflows/flyctl-deploy.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/.gitignore -------------------------------------------------------------------------------- /Earthfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/Earthfile -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/Makefile -------------------------------------------------------------------------------- /assets/animation_opt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/assets/animation_opt.gif -------------------------------------------------------------------------------- /assets/runner-diagram-details-bg.excalidraw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/assets/runner-diagram-details-bg.excalidraw -------------------------------------------------------------------------------- /assets/runner-diagram-details-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/assets/runner-diagram-details-bg.png -------------------------------------------------------------------------------- /cli/runner/client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/client/client.go -------------------------------------------------------------------------------- /cli/runner/cmd/langs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/cmd/langs.go -------------------------------------------------------------------------------- /cli/runner/cmd/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/cmd/root.go -------------------------------------------------------------------------------- /cli/runner/cmd/run.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/cmd/run.go -------------------------------------------------------------------------------- /cli/runner/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/main.go -------------------------------------------------------------------------------- /cli/runner/test-files/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/test-files/test.go -------------------------------------------------------------------------------- /cli/runner/test-files/test.js: -------------------------------------------------------------------------------- 1 | console.log("Hello, World") 2 | -------------------------------------------------------------------------------- /cli/runner/test-files/test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/cli/runner/test-files/test.py -------------------------------------------------------------------------------- /cli/runner/test-files/test.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | println!("Hello, world!"); 3 | } 4 | -------------------------------------------------------------------------------- /cli/runner/test-files/test.sh: -------------------------------------------------------------------------------- 1 | echo Hello, World! 2 | -------------------------------------------------------------------------------- /cli/runner/test-files/test.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /docker/frontend/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docker/frontend/Dockerfile -------------------------------------------------------------------------------- /docker/mock-server/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docker/mock-server/Dockerfile -------------------------------------------------------------------------------- /docker/server-alpine/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docker/server-alpine/Dockerfile -------------------------------------------------------------------------------- /docker/server-debian/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docker/server-debian/Dockerfile -------------------------------------------------------------------------------- /docker/server-debian/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docker/server-debian/entrypoint.sh -------------------------------------------------------------------------------- /docs/design.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/docs/design.md -------------------------------------------------------------------------------- /engine/coderunner/v1/coderunner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v1/coderunner.go -------------------------------------------------------------------------------- /engine/coderunner/v1/language.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v1/language.go -------------------------------------------------------------------------------- /engine/coderunner/v1/runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v1/runner.go -------------------------------------------------------------------------------- /engine/coderunner/v1/runner_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v1/runner_test.go -------------------------------------------------------------------------------- /engine/coderunner/v2/coderunner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v2/coderunner.go -------------------------------------------------------------------------------- /engine/coderunner/v2/language.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v2/language.go -------------------------------------------------------------------------------- /engine/coderunner/v2/language_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v2/language_test.go -------------------------------------------------------------------------------- /engine/coderunner/v2/runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v2/runner.go -------------------------------------------------------------------------------- /engine/coderunner/v2/runner_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/coderunner/v2/runner_test.go -------------------------------------------------------------------------------- /engine/controller/controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/controller.go -------------------------------------------------------------------------------- /engine/controller/controller_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/controller_test.go -------------------------------------------------------------------------------- /engine/controller/mocks/Controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/mocks/Controller.go -------------------------------------------------------------------------------- /engine/controller/writerremover/blobwriter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/writerremover/blobwriter.go -------------------------------------------------------------------------------- /engine/controller/writerremover/blobwriter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/writerremover/blobwriter_test.go -------------------------------------------------------------------------------- /engine/controller/writerremover/mocks/blobwriter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/controller/writerremover/mocks/blobwriter.go -------------------------------------------------------------------------------- /engine/integ_test/integration_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/integ_test/integration_test.go -------------------------------------------------------------------------------- /engine/process/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/process/main.go -------------------------------------------------------------------------------- /engine/runtime/argprovider.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/argprovider.go -------------------------------------------------------------------------------- /engine/runtime/argprovider_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/argprovider_test.go -------------------------------------------------------------------------------- /engine/runtime/limiter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/limiter.go -------------------------------------------------------------------------------- /engine/runtime/limiter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/limiter_test.go -------------------------------------------------------------------------------- /engine/runtime/mocks/Runtime.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/mocks/Runtime.go -------------------------------------------------------------------------------- /engine/runtime/runtime_agent.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/runtime_agent.go -------------------------------------------------------------------------------- /engine/runtime/runtime_agent_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/runtime_agent_test.go -------------------------------------------------------------------------------- /engine/runtime/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/engine/runtime/types.go -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/flake.lock -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/flake.nix -------------------------------------------------------------------------------- /fly.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/fly.toml -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/go.sum -------------------------------------------------------------------------------- /hack/hooks/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/hack/hooks/pre-commit -------------------------------------------------------------------------------- /hack/kill_server.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/hack/kill_server.sh -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/readme.md -------------------------------------------------------------------------------- /server/api/v1/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/api/v1/types.go -------------------------------------------------------------------------------- /server/api/v2/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/api/v2/types.go -------------------------------------------------------------------------------- /server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/main.go -------------------------------------------------------------------------------- /server/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/main_test.go -------------------------------------------------------------------------------- /server/mock-server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/mock-server/main.go -------------------------------------------------------------------------------- /server/test_server_startup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/server/test_server_startup.sh -------------------------------------------------------------------------------- /util/errors/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/util/errors/errors.go -------------------------------------------------------------------------------- /util/files/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/util/files/file.go -------------------------------------------------------------------------------- /util/iohelpers/helpers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/util/iohelpers/helpers.go -------------------------------------------------------------------------------- /util/iohelpers/helpers_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/util/iohelpers/helpers_test.go -------------------------------------------------------------------------------- /util/print/print.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/util/print/print.go -------------------------------------------------------------------------------- /web-frontend/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | /dist 3 | -------------------------------------------------------------------------------- /web-frontend/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/index.html -------------------------------------------------------------------------------- /web-frontend/js/config-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/config-utils.js -------------------------------------------------------------------------------- /web-frontend/js/editor.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/editor.js -------------------------------------------------------------------------------- /web-frontend/js/langs-request.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/langs-request.js -------------------------------------------------------------------------------- /web-frontend/js/load.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/load.js -------------------------------------------------------------------------------- /web-frontend/js/run-request.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/run-request.js -------------------------------------------------------------------------------- /web-frontend/js/set-code.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/js/set-code.js -------------------------------------------------------------------------------- /web-frontend/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/package-lock.json -------------------------------------------------------------------------------- /web-frontend/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/package.json -------------------------------------------------------------------------------- /web-frontend/style/main.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/style/main.css -------------------------------------------------------------------------------- /web-frontend/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/camerondurham/codecanvas/HEAD/web-frontend/webpack.config.js --------------------------------------------------------------------------------