Extremely fast online playground for every programming language.
Go to file
Radon Rosborough 406c64e68d Optimize prod image build for Docker cache 2020-06-12 12:31:04 -06:00
.circleci Prepare new deployment infrastructure 2020-06-10 21:14:50 -06:00
backend/src Load editor more quickly, add loading indicator 2020-06-12 11:42:11 -06:00
frontend Load editor more quickly, add loading indicator 2020-06-12 11:42:11 -06:00
scripts Only -t is supported (this is not a complete fix) 2020-06-12 12:22:18 -06:00
.dockerignore Getting things ready for deploy to Heroku 2020-06-09 15:17:46 -06:00
.gitignore JavaScript build system hell 2020-06-06 10:28:13 -06:00
Dockerfile.dev Misc fixups for production setup 2020-06-11 14:42:48 -06:00
Dockerfile.prod Optimize prod image build for Docker cache 2020-06-12 12:31:04 -06:00
LICENSE.md Add MIT License 2020-06-05 12:01:40 -06:00
Makefile Further corrections 2020-06-11 14:58:17 -06:00
README.md Document project setup 2020-06-10 16:49:21 -06:00
flag.png Add flag 2020-06-09 22:06:56 -06:00
package.json Add option to use TLS 2020-06-10 16:45:13 -06:00
tsconfig-webpack.json Fifth Circle of Webpack 2020-06-06 12:27:19 -06:00
tsconfig.json JavaScript build system hell 2020-06-06 10:28:13 -06:00
webpack.config.js Per-language syntax highlighting 2020-06-06 15:23:21 -06:00
yarn.lock Add option to use TLS 2020-06-10 16:45:13 -06:00

README.md

Riju

Riju is a very fast online playground for every programming language. In less than a second, you can start playing with a Python interpreter or compiling INTERCAL code.

Check out the live application!

You should not write any sensitive code on Riju, as NO GUARANTEES are made about the security or privacy of your data. (No warranty etc etc.)

This project is a work in progress, and I don't intend on thoroughly documenting it until it has reached feature-completeness.

Project setup

To run the webserver, all you need is Yarn. Just run yarn install as usual to install dependencies. For production, it's:

$ yarn backend
$ yarn frontend
$ yarn server

For development with file watching and automatic server rebooting and all that, it's:

$ yarn backend-dev
$ yarn frontend-dev
$ yarn server-dev

The webserver listens on localhost:6119. Now, although the server itself will work, the only languages that will work are the ones that happen to be installed on your machine. (I'm sure you can find a few that are already.) If you want to test with all the languages (or you're working on adding a new language), then you need to use Docker. Running the app is exactly the same as before, you just have to jump into the container first:

$ make docker

Note that building the image takes 30 minutes and requires about 15 GB of disk space.

Flag

Flag