CodeWorks is an online Java compiler, editor, and coding academy — write and run Java straight from the browser, or learn by solving preset programming problems with instant, automated feedback.
🔗 Live demo → thecodeworks.fly.dev
- In-browser Java sandbox — write code and run it against a real JVM, with
stdout/stderrstreamed back live. - Practice problems — solve preset challenges; submissions are auto-checked against expected output.
- Real-time execution — code runs and results stream over WebSockets (socket.io).
- Accounts & progress — JWT-authenticated; each user's solved problems are saved.
- Backend: Node.js (ESM) · Express · socket.io · JWT auth
- Code execution: a real JVM (
default-jdk) invoked per run - Data: Firebase Realtime Database
- Deploy: Docker image on Fly.io
docker build -t codeworks .
# needs Firebase service-account creds + a JWT secret in .env
docker run --env-file .env -p 3000:3000 codeworksWe built CodeWorks at the GreatUniHack hackathon, where it won the Web Applications UK challenge — the brief was to build something that helps young people, and ours helps them learn Java programming.

