Frontend for CodeFlow, a LeetCode-style online coding platform. This React + Vite project provides users with a clean interface to browse problems, write code, and view results in real-time.
- Problem list view with filters and search
- Code editor with syntax highlighting
- Realtime output from backend via Judge0
- User signup, login, and JWT-based session handling
- Personalized dashboard (e.g., My Sheets, Progress)
- Clean and responsive UI (desktop + mobile)
- Framework: React
- Build Tool: Vite
- Styling: Tailwind CSS + DaisyUi
- Code Editor: Monaco Editor
- State Management: Zustand
- API Client: Axios
- Routing: React Router
- Auth: JWT + Cookies
Here’s a preview of the CodeFlow frontend :
⚠️ Make sure to run both the frontend and backend servers for full functionality.
# Clone the repo
git clone https://github.com/Maverick341/codeflow-frontend.git
# Move into the directory
cd codeflow-frontend
# Install dependencies
npm install
# Start development server
npm run dev
⚠️ Make sure to configure environment variables for both development and production environments.
Create the following files in your project root:
VITE_BACKEND_URL=http://localhost:8000/api/v1VITE_BACKEND_URL=https://your-production-domain.com/api/v1Replace
https://your-production-domain.comwith the actual URL of your deployed backend (e.g., Render, GCP, Railway).
.
├── public/
├── src/
│ ├── assets/ # Images and static assets
│ ├── components/ # Reusable UI components
│ ├── layout/ # Page layouts (e.g., Navbar, Footer)
│ ├── lib/ # Utility functions and helper libraries
│ ├── page/ # Route-based page components
│ ├── schemas/ # Validation schemas (e.g., zod/yup)
│ ├── store/ # Global state (e.g., Redux/Zustand)
│ ├── App.jsx
│ ├── index.css
│ └── main.jsx
├── .gitignore
├── .prettierignore
├── .prettierrc
├── eslint.config.js
├── index.html
├── package.json
├── vite.config.js
└── README.md
Pull requests are welcome! To contribute:
- Fork the repo
- Create your feature branch (
git checkout -b feature/YourFeature) - Commit your changes (
git commit -m 'Add YourFeature') - Push to the branch (
git push origin feature/YourFeature) - Open a Pull Request
This project is licensed under the MIT License.

