You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Star3Β (3)You must be signed in to star a repository
About
RustGym is a comprehensive, gamified learning ecosystem for Rust programming. It combines a structured, quest-based curriculum with secure, real-time code execution, community leaderboards, and a dedicated CLI to take developers from basics to advanced proficiency.
An interactive, gamified platform for learning Rust programming. RustGym features a quest-based curriculum with 500+ coding challenges, Docker-isolated code execution, gamification mechanics (XP, levels, streaks, achievements, leaderboards), community features, and a CLI tool for local development.
π§ Development Status: This project is actively in development and not yet hosted. The backend requires local setup (see below). Contributions, feedback, and discussions are welcome!
π Frontend Preview: The UI is deployed at https://rustgym.vercel.app/ (frontend only β requires a local backend to be fully functional).
π¬ Open for Contribution: If you're interested in contributing, please open an issue or discussion. All skill levels welcome.
Architecture
Service
Technology
Port
Status
Frontend
React 19 + TypeScript + Vite
5173
β
Backend API
Rust / Axum 0.7
3000
β
Runner Service
Rust / Axum + Docker
3001
β
CLI Tool
Rust / Ratatui TUI
β
β
Database
PostgreSQL 16
5432
β
Cache
Redis 7
6379
β
Object Storage
MinIO (S3-compatible)
9000
β
Reverse Proxy
Nginx
80/443
β
What's Implemented
β Phase 0: Monorepo Bootstrap
Vite + React 19 + TypeScript frontend with Tailwind CSS, shadcn/ui, Zustand, TanStack Query, React Router
Rust/Axum backend with SeaORM, JWT auth, Argon2 password hashing
Runner microservice with Docker executor
Docker Compose for local infrastructure (Postgres, Redis, MinIO)
GitHub Actions CI pipeline (lint, build, test for all services)
β Phase 1: Authentication & User System
User registration with email/password (Argon2 hashing)
Rust, Axum, Bollard (Docker API), syn (AST parsing)
CLI
Rust, Ratatui, crossterm, Tokio, reqwest
Database
PostgreSQL 16, Redis 7, MinIO
DevOps
Docker Compose, GitHub Actions
License
All rights reserved.
About
RustGym is a comprehensive, gamified learning ecosystem for Rust programming. It combines a structured, quest-based curriculum with secure, real-time code execution, community leaderboards, and a dedicated CLI to take developers from basics to advanced proficiency.