A beautiful IDE-themed blog to track your daily LeetCode solutions and showcase your coding interview preparation progress.
- VS Code-inspired dark theme with syntax highlighting
- Search and filter solutions by title, tags, or difficulty
- Responsive design for all devices
- Automatic updates – push a solution, blog updates instantly
- Progress tracking with solution counts and metadata
- Direct links to LeetCode problems
- Interview prep-focused – perfect for showcasing your journey
Click the “Use this template” button above to create your own repository.
git clone https://github.com/emares17/daily-leetcode-tracker.git
cd daily-leetcode
# Install blog dependencies
npm install
# Install parser dependencies
cd scripts
npm install
cd ..
Replace the example file in solutions/ with your actual LeetCode solution. Create a new .py file for each problem you solve (e.g., TwoSum.py, ValidParentheses.py, etc.):
"""
Title: Two Sum
Difficulty: Easy
Tags: Array, Hash Table
Date: 2025-01-15
Description: Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.
ProblemUrl: https://leetcode.com/problems/two-sum/
"""
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
numMap = {}
for i, num in enumerate(nums):
complement = target - num
if complement in numMap:
return [numMap[complement], i]
numMap[num] = i
return []Every time you solve a new problem, add the solution file and push to trigger the automatic blog update:
git add .
git commit -m "Add Two Sum solution"
git pushDeploy your blog to make it publicly accessible and shareable with recruiters:
Option A: Vercel (Recommended)
- Go to vercel.com and sign up with your GitHub account
- Click "New Project" and import your repository
- Vercel will automatically detect it's a Vite project
- Click "Deploy" - your blog will be live in minutes!
- Get your live URL (e.g.,
your-repo.vercel.app)
Option B: Netlify
- Build your project locally:
npm run buildEach solution file must follow this exact format:
"""
Title: [Problem Name]
Difficulty: [Easy|Medium|Hard]
Tags: [Tag1, Tag2, Tag3]
Date: [YYYY-MM-DD]
Description: [Problem description]
ProblemUrl: [LeetCode problem URL]
"""
# Your solution code here
class Solution:
def methodName(self, params):
# Your implementation
passRequired Fields:
- Title: Exact problem name from LeetCode
- Difficulty: One of
Easy,Medium, orHard - Tags: Comma-separated list of relevant tags
- Date: Date you solved it (
YYYY-MM-DDformat) - Description: Brief problem description
- ProblemUrl: Direct link to the LeetCode problem
npm run devcd scripts
node parse-solutions.jsEdit the color variables in src/components/DailyLeetCode.tsx:
// Change these hex colors to customize your theme
bg-[#0d1117] // Background
bg-[#161b22] // Card background
border-[#30363d] // Borders
text-[#8b949e] // Secondary textThe parser currently supports Python, Javascript, Java, C++ but you can extend it for other languages by modifying scripts/parse-solutions.js.
Add additional fields by updating the parser and React components to display more information about your solutions.
The repository includes a pre-configured GitHub Action that:
- Triggers when you push files to
solutions/ - Parses your solution files automatically
- Updates the blog data
- Commits changes back to your repository
You can also manually trigger the action from the GitHub Actions tab.
Found a bug or want to add a feature? Contributions are welcome!
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is open source and available under the MIT License.