An interactive, bilingual (ES / EN) companion to Jimmy Song's Programming Bitcoin book. Read the chapter notes, run Python examples live in the browser, and solve exercises — all without installing anything.
Live site → https://caeher.github.io/programming-bitcoin/
| Feature | Details |
|---|---|
| 📖 Chapter notes | Markdown notes for all 14 chapters, available in Spanish and English |
| 🐍 Live Python sandbox | Run code snippets directly in the browser powered by Pyodide |
| 🧩 Interactive exercises | Solve chapter exercises and check your answers with automated tests |
| 🌐 i18n | Full Spanish / English support with per-locale routing |
| 🌙 Dark / Light mode | Theme toggle included |
| ➕ Math rendering | LaTeX equations rendered via KaTeX |
Coming soon — contributions welcome!
# Clone the repository
git clone https://github.com/caeher/programming-bitcoin.git
cd programming-bitcoin
# Install dependencies
pnpm install
# Start the development server
pnpm devThe app will be available at http://localhost:5173.
pnpm buildThe output goes to dist/.
| Layer | Technology |
|---|---|
| Bundler | Vite |
| UI library | React + TypeScript |
| Styling | Tailwind CSS v4 |
| Code editor | Monaco Editor |
| Python runtime | Pyodide (WASM) |
| Math | KaTeX via remark-math + rehype-katex |
| Routing | React Router v7 |
| i18n | i18next + react-i18next |
| Markdown | react-markdown + custom remark/rehype plugins |
programming-bitcoin/
├── docs/
│ ├── es/ # Spanish chapter notes (Markdown)
│ └── en/ # English chapter notes (Markdown)
├── src/
│ ├── components/ # Reusable React components
│ ├── context/ # React contexts (locale, theme, …)
│ ├── data/ # Chapter & exercise manifests
│ ├── hooks/ # Custom hooks
│ ├── i18n/ # i18next configuration
│ ├── lib/ # Utility functions & types
│ ├── locales/ # UI translation strings (JSON)
│ └── pages/ # Route-level page components
├── scripts/ # Build & validation scripts (Node.js)
└── pdfs/ # Source PDFs (not tracked in Git)
See CONTRIBUTING.md for a detailed guide on how to add new chapters, fix notes, or improve the codebase.
The source code of this project is released under the MIT License.
Chapter notes and exercises are educational summaries of the book Programming Bitcoin by Jimmy Song, published by O'Reilly Media. All rights to the original book content belong to the respective copyright holders. This project is intended for personal study and educational use only.