CodeMatrix is a coding platform designed to provide an interactive coding experience. It allows users to enhance their coding skills by solving algorithmic challenges, submitting their solutions, and competing on global leaderboards. With a focus on usability and performance, it is the ideal platform for both novice and experienced coders to practice and improve their programming abilities.
- User Authentication: Users can sign in to their accounts to access personalized features and track their progress.
- Problem Statements: Users can browse and access a wide range of coding problems, organized into various difficulty levels.
- Solution Submission: Users can submit their solutions to problems and receive immediate feedback on correctness and performance.
- Scoring System: Points are awarded based on the speed and efficiency of the solution, encouraging optimized and faster problem-solving.
- Global Leaderboard: A dynamic leaderboard displays top performers across daily, weekly, monthly, and all-time rankings, fostering a competitive and engaging environment
To set up and run the CodeMatrix platform locally, follow these steps:
Clone the repository to your local machine:
git clone <repository-url>
cd CodeMatrix
-
Navigate to the Frontend Directory:
cd frontend
-
Install Frontend Dependencies: Install the necessary dependencies:
npm install
-
Start the Frontend Development Server: Launch the frontend development server:
npm start
The frontend will be accessible at
http://localhost:5173
.
Pre-requisites:
npm install -g firebase-tools
Firebase Configuration:
-
Make sure you have a Firebase project created in the Firebase Console.
-
Configure your Firebase CLI to use your Firebase project:
firebase login firebase use --add`
Follow the prompts to select your Firebase project.
-
Navigate to the Backend Directory:
cd ../backend
-
Install Backend Dependencies: Install the necessary dependencies:
npm install
- Enhanced Problem Types: Expanding problem types and categories to include more diverse and challenging problems.
- Code Review System: Implementing a feature for peer code reviews to provide feedback and suggestions.
- Real-Time Collaboration: Adding real-time collaborative coding features for group problem-solving.