/Algo-Leveling

coding platform built using Judge0 for backend code execution and Remix for the frontend user interface. It utilizes Prisma as an ORM to interact with a PostgreSQL database, while Supabase provides authentication and real-time features. Users can submit code solutions to various challenges and receive instant feedback on their performance.

Primary LanguageTypeScript

WhatsApp Image 2024-10-29 at 17 52 38_02e84587 WhatsApp Image 2024-10-29 at 17 52 46_a70e27e7

🚀 Setup

# 🐳 Install Docker
# 📂 git clone https://github.com/leocodeio/Algo-Leveling.git
# 📂 cd Algo-Leveling

🛠️ Run Needy Services

docker-compose up -d db redis
sleep 10s
docker-compose up -d
sleep 5s

📑 Exporting and Importing Data

cd web-app/backend
pnpm install prisma
npx prisma init

# Export data to file
cd prisma
pg_dump -h localhost -U judge0 -d judge0 -p 8081 --data-only -f seed.sql

# Create new database and import
npx prisma migrate dev
psql -h localhost -U judge0 -d judge0 -p 8081 -f seed.sql

🏃‍♂️ Run the Project

Navigate to web-app/backend folder:

cd web-app/backend
pnpm install
pnpm run dev

Navigate to web-app/problem-generator folder:

cd web-app/problem-generator
pnpm install
pnpm run generate

Navigate to web-app/frontend folder:

cd web-app/frontend
pnpm install
pnpm run dev