MisterBooo/LeetCodeAnimation
MisterBooo/LeetCodeAnimation has 76,712 GitHub stars and 13,852 forks. GitHot measured -3 stars in 24 hours. Last checked 2026-11-04 23:54 UTC. Last push 2026-06-12.
Demonstrate all LeetCode problems through animation. (Visualize the problem-solving process for LeetCode problems, with full step-by-step navigation, replay, speed control, and voice explanations available at algomooc.com.)
Measured star growth
- in 24h
- -3
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
docs/README-En.md
OriginalLeetCodeAnimation
LeetCode solutions explained with animations: how pointers move, how states change, how recursion unfolds, and why boundary cases hold. This GitHub copy is the public index and historical assets; full step-through, replay, speed control, and voice walkthroughs live in the website version.
If this project helps you, a Star keeps it visible and supports continued updates.
🚧 2026 Major Version In Progress
This repo is not a one-off archive. A major 2026 upgrade is underway — only shipped / in-progress facts are listed:
- ✅ Three-language reference code: every solution ships Python / C++ / Java implementations, Python by default.
- ✅ AI tutor "Xiao Ou": an AI algorithm tutor that answers follow-up questions on ideas and edge cases while you solve.
- ✅ Voice walkthroughs in Wu Shixiong's voice: the animation narrates as it plays; the voice is AI-synthesized (Wu Shixiong's voice, authorized). Hit 🔊 in the player.
- 🚧 Full quality pass over 299 problems: a problem-by-problem quality review and remake, shipping in batches and synced back into this repo's index.
Progress flows into the "Current Index" below and
sync-log.mdvia the sync scripts.
Website-Style Animation Previews
These GIFs are captured from the website player. Click any image to jump straight to its problem page (full step playback, three-language code, and voice walkthrough are all in the website version).
↑ The website version also lets you step, replay, change speed, and listen — open the interactive version →
Highlights
- Animation-first: understand the process first, then return to the code. Many problems keep GIFs or step-by-step animation assets.
- Three-language code: each solution ships Python / C++ / Java reference implementations.
- Structured data:
data/manifest.jsoncan be consumed by scripts for indexing, link checks, or downstream tooling. - Continuous sync: when the website adds or adjusts animations, scripts sync them back to GitHub — the repo is not a static archive.
Current Index
The numbers below are injected by
tools/scripts/build-readme.jsfromdocs/data/manifest.json. Do not edit by hand.
| Item | Count / Path |
|---|---|
| LeetCode animation items | 256 |
| Easy | 71 |
| Medium | 160 |
| Hard | 25 |
| Data file | data/manifest.json |
| Index by number | leetcode-animation-index.md |
| Index by topic | index-by-topic.md |
| Website path | https://www.algomooc.com/leetcode-animation |
What the numbers mean: 256 is the number of LeetCode animations already synced into this repo (computed by scripts from the website-side
study_index.js→manifest.json). The 299 mentioned above is algomooc.com's full animation catalog (including advanced problems and topic sets, from the site'scontent-statssingle source) — a larger set than this repo's synced LeetCode subset. Both numbers are script-managed and never hand-typed: 256 comes from this repo's manifest; 299 is backfilled from the site's content-stats (see thesiteTotalfield indata/stats.json).
Content Map
| Goal | Start Here |
|---|---|
| Search animations by problem number | leetcode-animation-index.md |
| Search animations by topic | index-by-topic.md |
| Process problem data with scripts | data/manifest.json |
| Read earlier notes | notes/ or each problem's Article/ folder under problems/ |
| Check earlier animation assets | Each problem's Animation/ folder under problems/ |
| Read sync history | sync-log.md |
🛠 Maintainers: sync & data notes (click to expand — readers can skip)
Repository and website
GitHub stores historical content, the public index, and sync scripts; the website maintains the current animation pages. Playback, step-through, and reading experience are authoritative on the website. The sync scripts write the website's problem list back into this repo for review, search, and versioning.
Sync
The website's problem index comes from study_index.js. Review first:
npm run review:site
Once a sync is confirmed:
npm run sync # update manifest / number index / topic index / sync log
npm run validate # validate the manifest
node tools/scripts/build-readme.js --write # re-inject README number blocks + stats.json
This updates:
data/manifest.jsonleetcode-animation-index.mdindex-by-topic.mdsync-log.mddata/stats.jsonand theCurrent Indexmarker blocks in both READMEs
See sync-workflow.md and HOW-TO-INTERACT.md for the full workflow, commit rules, and number-ownership mechanism.
Layout
| Path | Notes |
|---|---|
data/manifest.json |
Structured LeetCode animation index (single source of truth for numbers) |
data/stats.json |
Script-computed counts read by the README badge |
leetcode-animation-index.md |
Markdown index generated from the manifest |
index-by-topic.md |
Topic index generated from the manifest |
sync-log.md |
Sync history |
sync-workflow.md |
Website-to-GitHub workflow |
../tools/scripts/review-site-changes.js |
Review whether website changes should be synced |
../tools/scripts/sync-algomooc-index.js |
Sync script for the website-side index |
../tools/scripts/validate-manifest.js |
Manifest validator |
../tools/scripts/build-readme.js |
Inject README number blocks + generate stats.json |
assets/previews/ |
Website-style animation preview GIFs used by the READMEs |
notes/ · ../problems/ |
Historical notes, code, and animation assets |
⭐ Star it to follow the updates
This project grew from hand-drawn animations to where it is today on the encouragement of every Star. If it helped you truly understand a problem, a Star is the most concrete support for continued updates.
📌 Content is continuously synced from algomooc.com — when the website updates, the repo index follows via scripts.
中文
See ../README.md.
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,454 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,175 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,563 starsmrdoob/three.js
JavaScript 3D Library.
117,611 stars