Skip to content

Commit 7edea2b

Browse files
committed
update readme
1 parent 3b1c217 commit 7edea2b

File tree

2 files changed

+196
-7
lines changed

2 files changed

+196
-7
lines changed

README.md

Lines changed: 196 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,202 @@
1-
### CODE QUEST
1+
# CodeQuest
22

3-
- A coding platform
3+
**A modern coding platform for competitive programming and skill development**
4+
5+
CodeQuest is a comprehensive coding platform that provides daily challenges, leaderboards, and problem sets from multiple competitive programming platforms. Built for students and developers who want to improve their algorithmic thinking and coding skills.
6+
7+
![CodeQuest Homepage](./homepage.png)
8+
9+
## Features
10+
11+
- **Daily Challenges** - Fresh coding problems every day with varying difficulty levels
12+
- **Leaderboard** - Track your progress and compete with other coders
13+
- **Problem Sets** - Browse problems by categories (Arrays, Dynamic Programming, etc.)
14+
- **Multi-Platform Integration** - Problems from LeetCode, GeeksforGeeks, CodeChef, and Codeforces
15+
- **User Profiles** - Personal dashboards with solve statistics and streaks
16+
- **Progress Tracking** - Monitor your coding journey with detailed analytics
17+
- **Responsive Design** - Seamless experience across desktop and mobile devices
18+
19+
## Technology Stack
20+
21+
### Frontend
22+
- **Framework**: React 19 with TypeScript
23+
- **Build Tool**: Vite
24+
- **Styling**: Tailwind CSS + shadcn/ui components
25+
- **State Management**: React Context API
26+
- **Routing**: React Router v6
27+
- **HTTP Client**: Axios
28+
- **Animations**: Framer Motion
29+
30+
### Backend
31+
- **Runtime**: Node.js
32+
- **Framework**: Express.js
33+
- **Database**: MongoDB with Mongoose
34+
- **Authentication**: JWT + Passport.js
35+
- **File Upload**: Cloudinary
36+
- **Email Service**: Custom email utilities
37+
- **Search**: TypeSense integration
38+
39+
### DevOps & Deployment
40+
- **Frontend Hosting**: Cloudflare Pages
41+
- **Backend Hosting**: AWS Lambda
42+
- **CI/CD**: GitHub Actions
43+
44+
## Getting Started
445

546
### Prerequisites
6-
- Install [Docker](https://www.docker.com/)
47+
- Node.js (v18 or higher)
48+
- MongoDB
49+
- Git
50+
51+
### Local Development Setup
52+
53+
1. **Clone the repository**
54+
```bash
55+
git clone https://github.com/codevoid048/codequest.git
56+
cd codequest
57+
```
58+
59+
2. **Setup Backend**
60+
```bash
61+
cd server
62+
npm install
63+
64+
# Create .env file with your configuration
65+
cp .env.example .env
66+
# Edit .env with your MongoDB URL, JWT secret, etc.
67+
68+
# Start the server
69+
npm run dev
70+
```
71+
72+
3. **Setup Frontend**
73+
```bash
74+
cd client-test
75+
npm install
76+
77+
# Create .env file
78+
echo "VITE_API_BASE_URL=http://localhost:5000" > .env
79+
80+
# Start the development server
81+
npm run dev
82+
```
83+
84+
4. **Access the application**
85+
- Frontend: `http://localhost:5173`
86+
- Backend: `http://localhost:5000`
87+
88+
### Environment Variables
89+
90+
**Backend (.env)**
91+
```env
92+
MONGODB_URI=your_mongodb_connection_string
93+
JWT_SECRET=your_jwt_secret
94+
CLOUDINARY_CLOUD_NAME=your_cloudinary_name
95+
CLOUDINARY_API_KEY=your_cloudinary_key
96+
CLOUDINARY_API_SECRET=your_cloudinary_secret
97+
```
98+
99+
**Frontend (.env)**
100+
```env
101+
VITE_API_BASE_URL=http://localhost:5000
102+
```
103+
104+
## Project Structure
105+
106+
```
107+
codequest/
108+
├── client-test/ # Frontend React application
109+
│ ├── src/
110+
│ │ ├── components/ # Reusable UI components
111+
│ │ │ ├── Home/ # Homepage components
112+
│ │ │ ├── Challenges/ # Challenge-related components
113+
│ │ │ ├── Leaderboard/ # Leaderboard components
114+
│ │ │ ├── ProblemSet/ # Problem browsing components
115+
│ │ │ └── ui/ # shadcn/ui components
116+
│ │ ├── context/ # React Context providers
117+
│ │ ├── lib/ # Utility functions and configurations
118+
│ │ └── styles/ # Global styles
119+
│ ├── public/ # Static assets
120+
│ └── package.json
121+
├── server/ # Backend Node.js application
122+
│ ├── controllers/ # Route controllers
123+
│ ├── models/ # MongoDB models
124+
│ ├── routes/ # API routes
125+
│ ├── middleware/ # Custom middleware
126+
│ ├── utils/ # Utility functions
127+
│ └── config/ # Configuration files
128+
├── .github/
129+
│ └── workflows/ # GitHub Actions CI/CD
130+
└── README.md
131+
```
132+
133+
## Contributing
134+
135+
We welcome contributions from the community! Here's how you can help:
136+
137+
### Getting Started
138+
1. Fork the repository
139+
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
140+
3. Make your changes
141+
4. Commit your changes (`git commit -m 'Add some amazing feature'`)
142+
5. Push to the branch (`git push origin feature/amazing-feature`)
143+
6. Open a Pull Request
144+
145+
### Code Style Guidelines
146+
- Use TypeScript for type safety
147+
- Follow ESLint configuration
148+
- Use Prettier for code formatting
149+
- Write meaningful commit messages
150+
- Add comments for complex logic
151+
152+
### Areas for Contribution
153+
- Bug fixes and performance improvements
154+
- New features and enhancements
155+
- Documentation improvements
156+
- UI/UX improvements
157+
- Test coverage expansion
158+
159+
### Development Workflow
160+
1. **Issues**: Check existing issues or create a new one
161+
2. **Discussion**: Discuss your approach in the issue
162+
3. **Development**: Work on your feature/fix
163+
4. **Testing**: Ensure your changes work correctly
164+
5. **Pull Request**: Submit with clear description
165+
166+
## Deployment
167+
168+
The project uses automated CI/CD pipelines:
169+
170+
### Frontend Deployment
171+
- **Platform**: Cloudflare Pages
172+
- **Trigger**: Push to `main` branch
173+
- **Build Command**: `npm run build`
174+
- **Output Directory**: `dist`
175+
176+
### Backend Deployment
177+
- **Platform**: Custom server deployment
178+
- **Trigger**: Push to `main` branch
179+
- **Environment**: Production environment variables
180+
181+
### CI/CD Pipeline
182+
- Automatic testing and linting
183+
- Build verification
184+
- Deployment to production
185+
- Environment-specific configurations
186+
187+
## License
188+
189+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
190+
191+
## Acknowledgments
192+
193+
- **SRKR Coding Club** - For the initiative and support
194+
- **Open Source Community** - For the amazing tools and libraries
195+
- **Contributors** - For making this project better
7196

197+
## Support
8198

9-
# Build and Start both services backend
10-
docker-compose up --build
199+
- **Bug Reports**: [Open an issue](https://github.com/codevoid048/codequest/issues)
200+
- **Feature Requests**: [Open an issue](https://github.com/codevoid048/codequest/issues)
11201

12-
# to track the stats like memory usage and stuff
13-
docker stats
202+
---

homepage.png

135 KB
Loading

0 commit comments

Comments
 (0)