rsschool-app
An application for the RS School education process
The open-source web platform that powers RS School, a free online coding bootcamp, manages student enrollment, assignment tracking, mentor matching, and progress reporting for large cohorts of learners.
RS School App is the platform that powers RS School, a free online programming school based in Belarus that has trained thousands of students in front-end development, back-end development, mobile apps, and data science. The application handles the operational side of running large-scale free courses: tracking student progress, managing assignments, coordinating mentors and students, and supporting the overall educational workflow.
The application is built with TypeScript and uses Next.js and React on the front end, NestJS on the back end, and PostgreSQL as the database. It runs on Amazon Web Services infrastructure and uses GitHub Actions for automated deployment. The project is organized as a monorepo, meaning multiple related codebases (client, server, and a newer NestJS backend) live in the same repository and are managed together using a build tool called Turbo.
RS School itself is a community-driven initiative where experienced developers volunteer as mentors to teach beginners at no cost. The app at app.rs.school is the live production system students and mentors use. Contributors to the codebase are publicly credited, and there is an Open Collective page for financial support of the project.
Setting up a local development environment requires installing Node.js, Podman (a container tool similar to Docker), and a few other prerequisites. The setup process involves cloning the repository, installing dependencies, starting a local database, restoring a test data snapshot, and running the application. The project is actively maintained and open to external contributions, with a contributing guide available in the repository.
Where it fits
- Run your own free online coding school, using this platform to track students, mentors, and assignments at scale.
- Contribute to the open-source system powering RS School, front end, back end, or DevOps improvements.
- Study a real-world production monorepo built with Next.js, NestJS, PostgreSQL, and AWS to learn modern full-stack architecture.
- Fork the platform to manage a community learning program or volunteer mentorship initiative.