Skip to content

jojo2504/yapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YAPP

Yet Another Programming Platform

Go Rust DockerReact Vite TypeScriptPostgres Redis

How does it works ?

The system is made up of four major parts, all working together:

  1. Frontend (React) — What students and teachers interact with
  2. Backend API (Go) — The main brain and controller of all data
  3. Judge System (Rust) — Securely runs and grades submitted code
  4. Infrastructure (PostgreSQL, Redis, Docker, OS) — The foundation holding it all together

Getting Started

Start downloading the tools belows:

Run docker-compose up to start all componants at once without needing to install anything else. Don't forget to have your .env file set up by removing or adding a new file .env with the right fields.

Warning

You may need to install WSL on windows to enable hot reloading

To start Node.js server independently:

cd ./frontend
npm run dev

Implemented Languages

  • Python
  • Rust
  • Csharp
  • C
  • Cpp
  • Javascript
  • Typescript
  • Go
  • Java
  • Swift

Roadmap

Q4 2025

  • Set project template and clear roadmaps
  • Create API documentation
  • Set up CI/CD pipeline
  • Basic backend prototype

Q1 2026

  • Add backend primary functionalitty in Go
  • Add Submit judge in Rust & Docker
  • Add database integration with Postgres
  • Add core frontend features
  • Implement user authentication system

Q2 2026

  • Polishing project
  • Real-time collaboration features
  • Third-party integrations
  • On premise server integrations

Future Considerations

  • Scale the project more schools and colleges.

Made with love for YAPP - Yet Another P2IP Project or Yet Another Programming Platform...