Pewarta Proxy

πŸ“‹ Server Request & Proxy Logs

Loading active proxy settings...
Developed by Khairul Adha (adhexa.id)
Mengambil log server...

βš™οΈ Pengaturan Proxy Target

Skip to content

About

A simple Node.js web app to track and display your LeetCode progress.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

LeetCode Metrics

LeetCode Metrics is a lightweight full-stack app that fetches and displays LeetCode progress by difficulty (Easy/Medium/Hard) with submission stats.

Live Demo

Features

  • Search any valid LeetCode username
  • Difficulty-wise solved progress with animated circular charts
  • Submission summary cards (overall + difficulty-wise)
  • Responsive, modern UI (desktop + mobile)
  • Rate limiting and API caching for optimal backend performance

Tech Stack

  • Frontend: HTML, CSS, Vanilla JavaScript
  • Backend: Node.js + Express
  • API Source: LeetCode GraphQL endpoint

Project Structure

leetcode-metrics/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   └── user.js
β”‚   β”œβ”€β”€ middleware/
β”‚   β”‚   └── rateLimit.js
β”‚   └── server.js
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ index.html
β”‚   β”œβ”€β”€ js/
β”‚   β”‚   └── script.js
β”‚   β”œβ”€β”€ css/
β”‚   β”‚   β”œβ”€β”€ style.css
β”‚   β”‚   └── styles/
β”‚   β”‚       β”œβ”€β”€ base.css
β”‚   β”‚       β”œβ”€β”€ layout.css
β”‚   β”‚       β”œβ”€β”€ components.css
β”‚   β”‚       └── responsive.css
β”‚   └── assets/
β”‚       β”œβ”€β”€ logo.png
β”‚       └── favicon.ico
β”œβ”€β”€ package.json
└── README.md

Requirements

  • Node.js 18+ (Native Fetch is used)
  • npm

Local Setup

npm install
npm start

Open:

Environment Variables

  • PORT (default: 5000) β€” server port

PowerShell example:

$env:PORT=5001
npm start

API

POST /api/user

Request body:

{
	"username": "leetcode_username"
}

Responses:

  • 200 user stats payload
  • 400 username is required
  • 404 user not found
  • 500 internal/server or upstream error

Security & Reliability

  • CORS enabled for cross-origin requests
  • Basic request validation for username presence
  • API Rate Limiting to prevent spam and abuse
  • In-memory Caching to reduce upstream LeetCode API latency
  • Graceful error handling for upstream LeetCode API failures

Styling Structure

  • public/css/style.css acts as the entry stylesheet.
  • Actual styles are split by concern under public/css/styles/ for easier maintenance.

Troubleshooting

  • If old UI appears, hard refresh (Ctrl + F5) once.
  • If EADDRINUSE appears, run on another port:
$env:PORT=5001
npm start

Author

About

A simple Node.js web app to track and display your LeetCode progress.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages