An extensive index of Bitcoin-related topics, combining and enhancing the established Bitcoin Optech Topics with additional relevant entries.
See TOPICS.md for the categorized index or topics.json for the machine-readable format.
.
├── topics/ # Bitcoin topics
│ ├── topic1.yaml
│ ├── topic2.yaml
│ └── ...
├── scripts/ # Build and maintenance scripts
│ └── build_index.py
├── topics.json # Machine-readable index
├── TOPICS.md # Generated documentation
└── README.md
Each topic is defined in YAML format with the following structure:
title: "Topic Title" # Display name of the topic
slug: "topic-slug" # URL-friendly identifier
categories: # List of categories this topic belongs to
- "Category 1"
- "Category 2"
aliases: # Optional: Alternative names for the topic
- "Alternative Name"
- "Another Name"
excerpt: "A comprehensive description of the topic."
Each category automatically includes a miscellaneous topic that covers content which doesn't fit neatly into other specific topics. By default, these topics use slugs generated from the category name (lowercase with hyphens).
For categories that need custom slugs, define them in category-slugs.yaml.
To build the combined index and documentation:
python scripts/build_index.py
This will:
- Fetch the latest topics from Bitcoin Optech's /topics.json.
- Combine them with additional topics from the
topics/
directory - Generate misc topics for each category using slugs from
category-slugs.yaml
where defined - Generate
topics.json
with the complete topics data - Create
TOPICS.md
with categorized listings
- Create a new YAML file in the
topics/
directory - Follow the topics format described above
- Run the build script to update the index