Skip to content
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 116 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,116 @@
# leetcode-ranking
# CodePVG LeetCode Ranking

A web-based platform developed for CodePVG to track and rank students based on their LeetCode performance.
Comment thread
adityak-06 marked this conversation as resolved.
Outdated
It allows users to register with their LeetCode username and automatically fetches their problem-solving statistics to display on a leaderboard.

---

## Purpose

The goal of this project is to:

- Encourage consistent problem-solving among students
- Create a competitive yet motivating environment
- Provide visibility into individual coding progress

---

## Features
Comment thread
adityak-06 marked this conversation as resolved.
Outdated

### User Registration
- Users can register using their name and LeetCode username
- Accepts both direct usernames and profile links
- Validates whether the LeetCode user exists before registration

### Leaderboard System
- Displays ranked users based on their LeetCode statistics
- Automatically updates rankings based on fetched data
- Provides a clean interface for easy comparison

### Automated Data Fetching
- Periodically fetches user data using the LeetCode API
- Updates stored data without manual intervention
- Keeps leaderboard information up-to-date

### User Interface
- Simple and clean UI design
- Smooth user experience with loading states
- Includes blur and spinner animation during registration

### Input Handling and Validation
- Extracts username from full LeetCode profile links
- Prevents invalid or non-existent usernames
- Avoids duplicate or incorrect entries

### Error Handling
- Handles API failures gracefully
- Displays alerts for invalid inputs
- Prevents multiple submissions during requests

---

## Tech Stack
Comment thread
adityak-06 marked this conversation as resolved.
Outdated

| Layer | Technology |
|----------|------------------------|
| Frontend | HTML, CSS, JavaScript |
| Backend | Node.js |
| API | LeetCode API |

---

## Project Structure

```
leetcode-ranking/
│── frontend/ # UI (HTML, CSS, JS)
│── data/ # Stored user data
│── scripts/ # Automation scripts
│── server.js # Backend server
Comment thread
adityak-06 marked this conversation as resolved.
Outdated
│── package.json
```

---

## How to Run Locally

### 1. Clone the repository

Comment thread
adityak-06 marked this conversation as resolved.
Outdated
```bash
git clone https://github.com/YOUR-USERNAME/leetcode-ranking.git
cd leetcode-ranking
```

### 2. Install dependencies


npm install
cd frontend
npm install
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
npm install
cd frontend
npm install
`npm install`


### 3. Run the project


npm run dev

or

node server.js
Comment thread
adityak-06 marked this conversation as resolved.
Outdated

## Usage

1. Open the registration page
2. Enter your name and LeetCode username
3. Submit the form
4. View your ranking on the leaderboard
Comment thread
adityak-06 marked this conversation as resolved.
Outdated

---

## Contributing

Contributions are welcome.

- Fork the repository
- Create a new branch
- Make your changes
- Submit a Pull Request