A full-stack coding platform inspired by LeetCode that enables users to practice data structures and algorithms problems in an interactive environment. The application provides problem browsing, code editing, execution, and result evaluation within a modern web interface.
Live Demo: https://leetcode-clone-pi-flame.vercel.app/
You can watch the complete working demonstration below:
This project replicates the core functionality of an online coding judge. Users can browse problems, write solutions in an integrated code editor, and execute their code to verify correctness. The platform is designed with clean architecture, scalability, and maintainability in mind.
- Structured problem listing and detailed problem pages
- Integrated code editor with syntax highlighting
- Code execution and output evaluation
- User authentication and session management
- RESTful API architecture
- Responsive user interface
- React
- TypeScript
- CSS
- Node.js
- Express
- REST APIs
- Online code execution service integration
- Vercel (Frontend deployment)
leetcode-clone/
│
├── client/
├── server/
├── assets/
│ ├── screenshots/
│ └── videos/
└── README.md
git clone https://github.com/JayRathore10/leetcode-clone.git
cd leetcode-clonecd client
npm install
cd ../server
npm installCreate a .env file inside the server directory and configure:
PORT=5000
MONGO_URI=your_database_connection_string
GEMINI_API_KEY=your_gemini_api_service_key
COOKIE_SECRET=your_cookie_secret
SALT_ROUND=your_hashing_salt_round
JWT_SECRET=your_jwt_secret
FRONTEND=your_frontend_url
VITE_BACKEND_URL=your_backend_url
Modify values according to your environment configuration.
Start backend:
cd server
npm run devStart frontend:
cd client
npm start- Frontend deployed on Vercel
- Backend can be deployed on Render, Railway, or any Node.js-supported hosting platform
- Submission history tracking
- User performance statistics dashboard
- Difficulty filters and tagging system
- Discussion section per problem
- Admin panel for managing problems
Contributions are welcome.
- Fork the repository
- Create a feature branch
- Commit your changes
- Open a pull request with a clear description
This project is open-source and intended for educational and portfolio purposes.









