Hacker News new | ask | show | jobs
Ask HN: How are online code runner/playgrounds made?
3 points by mitch-snipline 2174 days ago
For example, https://play.crystal-lang.org/#/cr, https://play.rust-lang.org/, or https://executeprogram.com

I'm thinking there are two options. Either having some kind of <Language> to JS interpreter that runs the code in the browser, or, running the code in some kind of container on a server and returning the response to the client. In which case, how are the servers secured against potentially dangerous input?

3 comments

https://github.com/integer32llc/rust-playground is the code for play.rust-lang.org
I think many of them (esp. Hacker Rank) start up a container to run your program. Presumably these are configured to prevent access to the network, external files, etc.

The AWS Lambda console has a code editor/runner that looks a lot like what Hacker Rank has, but you are running on the real Lambda system which has some characteristics of VMs and containers.

Golang uses a restricted remote container.

Curlang uses WebAssembly to be local to the browser. I see this becoming a trend.