![]() This is the final push towards implementing legitimate support for Claro in Riju! I've now figured out how to package up all of the Bazel generated build resources (jars) and the Bazel generated run script and have pieced everything together so that rebuilds and initial page loads are all as efficient as I can make them so far accounting for the intermediate step of compiling to Java. The general process is to package everything needed from Bazel in a tarball and then to dynamically insert a custom script to the Bazel generated run script in bazel-bin to rebuild and update the jar file for the latest modification to the file. This allows me to canibalize Bazel's logic for determining where all the proper "runfiles" a.k.a. jars are located in that tarball. With this approach I'm also able to trivially support the Claro REPL in Riju as well!!!!! This is the greatest unexpected surprise :D. |
||
---|---|---|
.github | ||
backend | ||
bin | ||
cli | ||
doc | ||
docker | ||
financials | ||
frontend | ||
langs | ||
lib | ||
packer | ||
shared | ||
supervisor | ||
system | ||
tf | ||
tools | ||
.clang-format | ||
.dockerignore | ||
.gitignore | ||
CONTRIBUTING.md | ||
LICENSE.md | ||
Makefile | ||
README.md | ||
SECURITY.md | ||
package.json | ||
webpack.config.cjs | ||
yarn.lock |
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 it out at https://riju.codes!
Service uptime available at https://riju.statuspage.io/.
Is it free?
Riju will always be free for everyone. I pay for the hosting costs myself.
A number of people have asked me if they can donate to help keep Riju online. In response, I have set up a few methods, which you can see in the "Sponsor this project" sidebar on GitHub. All donations will be used solely to cover hosting costs, and any surplus will be donated to the Electronic Frontier Foundation.
Is it safe?
Riju does not collect your personal information.
- Your code is deleted from the server as soon as you close Riju.
- Your terminal input and output is never saved or logged anywhere.
- Riju uses Fathom Analytics to measure traffic. Fathom collects very limited data and does not sell it to third parties, unlike Google Analytics.
- Riju does not serve advertisements or share data with any third party aside from Fathom Analytics.
All of the above notwithstanding, any service that allows people to run code online is inherently risky. For this reason, I can't make any guarantees about the security or privacy of your data.
See also Reporting a security issue.
Are there rules?
Yes, there is one rule and it is "please be nice". Examples of not being nice include:
- Trying to consume as many resources as possible. All this will do is prevent others from using Riju, which isn't nice.
- Mining cryptocurrency. Since hosting Riju comes out of ~my paycheck~ community donations, this is exactly equivalent to stealing, which isn't nice.
Can I help? / Documentation
Absolutely, please see Contributing guide.
Similar projects
Acknowledgements
- A big thank you to Mike Diarmid of Invertase for being an early sponsor of the project and helping out with hosting costs! Thanks to Mike's generous support I have the runway to get Riju stable enough for everyone to use.
- Thank you to the maintainers of Monaco, node-pty, and Xterm.js! Without any one of these open-source libraries, version 1.0 of Riju could not have come to life!