Huashu Design
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

krahets’s free, open source book on data structures and algorithms, with animated illustrations and code you can run with one click. It has English, Chinese, Japanese, Russian and Korean editions. The setup notes cover the website, PDF and EPUB files, running the code and Docker.
Hello Algo is an open-source project on GitHub in the Education category, listed by Mindket. It is free. This is version 2, last updated on . Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.
git clone https://github.com/krahets/hello-algo.git
Hello Algo is a free, open source book on data structures and algorithms, written by krahets and many contributors in a GitHub repository. Its English README calls it a tutorial “with animated illustrations and code you can run with one click”. The book is the product here. You read it on its website, as a PDF or EPUB, or in your own editor, and Mindket’s setup notes say how to do each. The repository holds the book in Simplified and Traditional Chinese, English, Japanese, Russian and Korean.
| Part | Chapters | What it covers |
|---|---|---|
| Foundations | The preface, getting to know algorithms | Who the book is for, how to read it, and what an algorithm is. The preface also sets out a three-stage learning path. |
| Complexity analysis | Chapter 2 | Criteria and methods for judging a data structure or an algorithm, including how to derive time and space complexity, the common classes and examples. |
| Data structures | Chapters 3 to 9: data structures, arrays and linked lists, stacks and queues, hash tables, trees, heaps, graphs | Definitions, strengths, weaknesses, common operations, variants, typical applications and implementations. |
| Algorithms | Chapters 10 to 15: searching, sorting, divide and conquer, backtracking, dynamic programming, greedy algorithms | Definitions, strengths, weaknesses, efficiency, applications, solution steps and example problems. |
| Appendix | Chapter 16 | Setting up a programming environment, contributing to the book and a glossary. |
Beginners in data structures and algorithms who can already read and write simple code in one language. The About page also aims it at readers who have solved some practice problems but only half understand the theory behind them. Readers who know the common problem types can use it to review, with the repository’s code as an “algorithm dictionary”.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Self-study | Programmers new to algorithms | Read the web edition chapter by chapter, animations first, and ask in the comments at the bottom of a page | A learner opens the sorting chapter and steps through the quick sort pictures before reading the text. |
| Students | Students in a first algorithms course | Read it beside lectures, and run the code in the language the course uses | A student in a Java course runs the Java files for each chapter while the lecture covers the same topic. |
| Interview preparation | Job seekers | Finish the fundamentals first, which the preface calls stage one, then move on to practice problems | A job seeker works through the chapters, then follows the preface’s link to the author’s LeetCode-Book repository for problem lists. |
| Teaching | Teachers who want free material in more than one language | Point a class at the web edition in its language, or hand out the PDF or EPUB | A teacher shares the English and Simplified Chinese editions of one chapter with a mixed class. |
| Open source work | Translators and code porters | Fix a page, add code in another language or review a translation | A volunteer reviews a chapter’s English against its Chinese source, as the English contributing guide asks. |
Skip it if you want practice problems more than explanations. The preface says this book mainly covers the fundamentals, and it points to the author’s LeetCode-Book repository for problem lists.
The book works in a browser, in an e-book reader, in your editor and in Docker. The maker documents no coding agent, so these notes have none.
Get it saves a zip of Mindket’s setup notes in your downloads folder, with a note for each way of reading or running the book. Reading online needs nothing at all.
| Need | Detail |
|---|---|
| Reading online | A browser. Nothing is installed |
| PDF or EPUB | A PDF viewer or an e-book reader, and a file from the releases page |
| Running the code | Git, or the Download ZIP button on GitHub, plus an editor and a language environment. Python needs 3.10 or later |
| Your own copy of the site | Docker and Docker Compose |
en/codes folder. A code block with a file name above it tells you which one.git clone https://github.com/krahets/hello-algo.git
To build your own copy of the site, run this in the repository’s root folder. The English edition is then at http://localhost:8000/en/ .
docker-compose up -d
This line removes the copy again.
docker-compose down
Start with the preface page, then go chapter by chapter or jump to the topic you need. The preface page lists the book’s writing conventions.
| You see | It means |
|---|---|
| A * after a section title | The section is optional and harder. If your time is short, skip it at first |
| An underlined word | A technical term in the web edition, shown in bold in print and PDF. Remember these |
| Bold text | A key point or a summary statement |
| Quotation marks | A word used in a specific sense |
| None, for a null value | Where programming languages disagree on a term, the book follows Python |
When a passage has an animated illustration, the preface says to look at the illustration first and use the text to support it. It also recommends typing the code out yourself if you have time, and at least reading and running all of it if you do not.
Every section of the web edition has a comments area at the bottom. The preface says the author and fellow contributors do their best to answer there, usually within two days, and it asks readers to answer each other too.
You want to understand quick sort. You open section 11.5 on the website. It shows the partition step by step in pictures, where a pivot is chosen, two pointers walk in from the ends and swap elements until they meet. Then you clone the repository and open the Python file for that section in VS Code:
en/codes/python/chapter_sorting/quick_sort.py
Mindket copied that one file into an empty folder and ran it with Python 3.14 on 3 November 2026. It needs no other file. The file holds three versions of quick sort and a driver that sorts the same six numbers with each. It printed:
After quick sort, nums = [0, 1, 2, 3, 4, 5] After quick sort (median pivot optimization), nums1 = [0, 1, 2, 3, 4, 5] After quick sort (recursion depth optimization), nums2 = [0, 1, 2, 3, 4, 5]
The page explains the second and third versions. Picking the median of three elements as the pivot makes a slow run less likely, and recursing only on the shorter side keeps the recursion shallow. Change the numbers in the driver at the bottom and run the file again.
If you are new. The foreword gives everyday pictures. Winter clothes behave like a stack, because what goes on first comes off last. A tube of shuttlecocks is like a queue, and a dictionary resembles a hash table. Chapter 2 teaches you to compare algorithms by how much time and space they use. If setup feels heavy, read the whole book online first. Nothing needs installing for that.
For experts. The repository holds six editions side by side. The Simplified Chinese book sits at the root, and each of zh-hant, en, ja, ru and ko has its own docs, its own codes folder and its own mkdocs.yml. The English contributing guide treats the Chinese source as the authority for meaning.
The Markdown source of a page on GitHub does not show its code. The quick sort source holds only placeholder lines such as [file]{quick_sort}-[class]{quick_sort}-[func]{partition} where the code is drawn on the website. Read the code in the codes folder.
The English Python folder has one folder per chapter, a modules folder and test_all.py. That script finds every chapter_*/*.py file, runs each one, and raises an error if any fails. The Go folder has a pkg folder and a go.mod beside its chapters. Chapter exercise pages are generated, and the English guide says wording changes belong in the companion workspace repository.
The notes are Mindket’s own, read from the repository on 3 November 2026. They are not made or endorsed by krahets, and they hold none of the book’s pictures or code.
This kit holds setup notes only. Mindket wrote them. The book, its animations and its code stay in the krahets/hello-algo repository: https://github.com/krahets/hello-algo
These notes are not made or endorsed by krahets. The English README calls the book "A data structures and algorithms tutorial with animated illustrations and code you can run with one click" and says "This project aims to create a free, open-source introduction to data structures and algorithms that is accessible to beginners." The Chinese edition is titled 《Hello 算法》. The notes were written from the English and Simplified Chinese READMEs, the English edition's docs pages and two Simplified Chinese pages, the repository's Docker files and giscus.json, its GitHub releases, GitHub's repository API and its folder listings, all read on 3 November 2026.
License: the repository's own license is CC BY-NC-SA 4.0. The README's License section says "The texts, code, images, photos, and videos in this repository are licensed under CC BY-NC-SA 4.0." The LICENSE file is the Creative Commons legal text, and its first line reads "Attribution-NonCommercial-ShareAlike 4.0 International". GitHub's answer for the repository names the license "Other", with the SPDX id NOASSERTION. The words NonCommercial and ShareAlike are in the license's name. If you plan to reuse the book's text, pictures or code in something you sell, read the legal text in LICENSE first. These notes quote only short lines from the book and name the page each came from, and they hold none of its pictures or code.
A free book on data structures and algorithms for beginners, written by krahets with many contributors. The English README says "Animated illustrations throughout the book, clear explanations, and a gradual learning curve guide beginners through data structures and algorithms." It adds "Code that runs with one click helps readers build programming skills through practice and understand how algorithms work and how data structures are implemented." Source: https://github.com/krahets/hello-algo/blob/main/en/README.md
When a code block in the book has a file name at the top, the "How to use this book" page says you can find that file in the repository's en/codes folder. See setup/run-the-code.md.
The book's chapters, as the English edition's table of contents numbers them:
| Chapter | Title |
|---|---|
| 0 | Preface |
| 1 | Getting to know algorithms |
| 2 | Complexity analysis |
| 3 | Data structures |
| 4 | Arrays and linked lists |
| 5 | Stacks and queues |
| 6 | Hash tables |
| 7 | Trees |
| 8 | Heaps |
| 9 | Graphs |
| 10 | Searching |
| 11 | Sorting |
| 12 | Divide and conquer |
| 13 | Backtracking |
| 14 | Dynamic programming |
| 15 | Greedy algorithms |
| 16 | Appendix (a programming environment, contributing, a glossary) |
The table of contents also has a Foreword before Chapter 0 and a References page after Chapter 16. Source: https://github.com/krahets/hello-algo/blob/main/en/mkdocs.yml
The repository holds the book in six languages: Simplified Chinese at the root, then folders for Traditional Chinese (zh-hant), English (en), Japanese (ja), Russian (ru) and Korean (ko). The README's language bar names all six and links the other five.
Nothing, to read the book. To run its code you install a language environment, and the book says which one in its appendix. See setup/language-environments.md. To build your own copy of the website you need Docker. See setup/docker.md.
en/codes Docker files for the English edition's code (every edition's code folder holds such a pair)The maker documents no coding agent: the README and the docs pages read do not mention one.
A clone is updated with ordinary Git, and a ZIP is a snapshot, so download a new one for later changes (Mindket's note). To remove a clone or a ZIP, delete the folder. Online reading installs nothing. The Docker deployment has its own remove command, in setup/docker.md.
extra_javascript).git clone and the release downloads talk to GitHub.README.md 7 KB setup/contribute-and-translate.md 4 KB setup/docker.md 4 KB setup/download-pdf-epub.md 3 KB setup/language-environments.md 4 KB setup/read-online.md 6 KB setup/run-the-code.md 5 KB
Updated by Mindket to the current version of this kit.
Listed GitHub projects in the same category that share the most topics with this one.
| Product | Stars | License |
|---|---|---|
| Hello Algo This page | 131,980 | — |
| Coding Interview UniversityShares algorithms · data-structures · algorithm | 364,052 | CC-BY-SA-4.0 |
| The Algorithms PythonShares algorithm · education | 225,927 | MIT |
Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search and on Trendshift. Mindket doesn’t write or check them. Open one to read it where it was posted.
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
op7418 · Skill
Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…
alirezarezvani · Skill
Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…
jwasham · Kit
jwasham’s multi-month study plan for becoming a software engineer, written as one long README of videos, lectures and things to implement. Setup notes cover a…
TheAlgorithms · Kit
TheAlgorithms’ open source collection of algorithms and data structures, each written in Python for learning. Setup notes cover reading it on GitHub or its doc…
prathoshap · Kit
Reads classical Sanskrit verses aloud in a chant style, using one trained voice and a reference clip that sets the rhythm. For people who study, recite or need…