Skip to content

Commit b9acb5a

Browse files
committed
docs: restructure READMEs and split full catalog tables into catalog/
The root READMEs shrank from 294 to 191 lines (EN) and 275 to 176 (ZH): - render_readmes.py now renders a condensed catalog index (learning-path bullets linking into the catalog pages) into the root READMEs, and the full 33-resource tables into the new generated catalog/README.md and catalog/README_cn.md. - Badges moved directly under the title and the tagline no longer repeats it; the internal "Current status" section collapsed to a one-line release pointer with the operational detail moved to docs/REPO_TO_WEBSITE.md. - The course-verify section now lists the three checkpoint states ([open]/[passed]/[pending]) instead of prose. - The validation commands duplicated from CONTRIBUTING.md were replaced by a Contribute section linking to it. - Added assets/verify-demo.svg, a terminal demo built from a real verify.py --attest checkpoint report, embedded in both READMEs. - The resource-exposure test now targets the catalog READMEs; a new test asserts the root READMEs link to the full catalog. Website-consumed exports (catalog.json, radar.json, content-manifest.json) are byte-identical; no pinned-consumer change is required by this commit.
1 parent 2b242c0 commit b9acb5a

10 files changed

Lines changed: 432 additions & 363 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,20 @@ This file records notable catalog-contract and maintenance changes.
44

55
## [Unreleased]
66

7+
### Changed — 2026-10-04 README restructure
8+
9+
- Root READMEs now carry a condensed catalog index (learning-path bullets
10+
linking into the catalog pages); the full 33-resource tables moved to the
11+
new generated `catalog/README.md` and `catalog/README_cn.md`, both rendered
12+
by `tools/render_readmes.py`.
13+
- Root READMEs: badges moved directly under the title, the internal
14+
"Current status" section collapsed to a one-line release pointer (details
15+
in `docs/REPO_TO_WEBSITE.md`), the course-verify section rewritten as a
16+
checkpoint-state list, and the locally duplicated validation commands
17+
replaced by a link to `CONTRIBUTING.md`.
18+
- Added `assets/verify-demo.svg`, a terminal demo of a real `verify.py`
19+
checkpoint report, embedded in both READMEs.
20+
721
### Fixed — 2026-10-04 CI and course setup
822

923
- CI: `ruff` is pinned in `requirements-dev.lock.txt`. CI had installed the

‎Makefile‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ help:
66
@echo "FlyPython Development Workflow:"
77
@echo " make check - Run the same checks as CI: lint, tests, catalog, radar, export, readme, manifest, example, course, and path checks"
88
@echo " make export - Regenerate catalog.json and radar.json"
9-
@echo " make render - Regenerate README and README_cn catalog indexes plus the Radar table"
9+
@echo " make render - Regenerate root and catalog README indexes plus the Radar table"
1010
@echo " make manifest - Regenerate content-manifest.json"
1111
@echo " make lint - Run ruff"
1212
@echo " make test - Run pytest test suite"

‎README.md‎

Lines changed: 46 additions & 148 deletions
Large diffs are not rendered by default.

‎README_cn.md‎

Lines changed: 41 additions & 139 deletions
Large diffs are not rendered by default.

‎assets/verify-demo.svg‎

Lines changed: 30 additions & 0 deletions
Loading

‎catalog/README.md‎

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# Reviewed source catalog
2+
3+
Every entry below passed maintainer review: why it is included, who it suits,
4+
and which access or safety constraints deserve attention. The canonical source
5+
data lives in the surrounding `catalog/` YAML files — this page is generated by
6+
`tools/render_readmes.py` and must not be edited by hand.
7+
8+
[English](README.md) · [中文](README_cn.md) · [Repository README](../README.md)
9+
10+
<!-- catalog-index:start -->
11+
<!-- Generated by tools/render_readmes.py; edit catalog/ instead. -->
12+
> **33 reviewed resources** · Catalog reviewed 2026-09-06 · 25 intermediate or advanced · Primary sources first
13+
14+
### Choose a learning path
15+
16+
- [**Python foundations**](#path-foundations) — Learn the language, environments, dependencies, typing, and tests that reliable Python work depends on. (8 resources)
17+
- [**Web and APIs**](#path-web-apis) — Build typed services and applications that connect Python logic to users and other systems. (7 resources)
18+
- [**Automation**](#path-automation) — Turn repeatable work into maintainable scripts, browser workflows, and data pipelines. (7 resources)
19+
- [**AI agents**](#path-ai-agents) — Learn tools, structured output, state, evaluation, and the safety boundaries of agent systems. (11 resources)
20+
21+
<a id="path-foundations"></a>
22+
### Python foundations
23+
24+
Learn the language, environments, dependencies, typing, and tests that reliable Python work depends on.
25+
26+
| Resource | Why it is useful | Level and language | Access and risk | Reviewed |
27+
| --- | --- | --- | --- | --- |
28+
| [The Python Tutorial](https://docs.python.org/3/tutorial/)<br><sub>Official docs · Featured</sub> | The primary introduction to Python syntax, data structures, modules, errors, classes, and the standard library. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
29+
| [venv — Creation of virtual environments](https://docs.python.org/3/library/venv.html)<br><sub>Official docs</sub> | The standard-library reference for creating isolated Python environments and understanding their behavior. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
30+
| [Python Packaging User Guide](https://packaging.python.org/en/latest/tutorials/packaging-projects/)<br><sub>Official docs</sub> | The PyPA tutorial for project layout, build metadata, distributions, and publishing Python packages. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
31+
| [uv documentation](https://docs.astral.sh/uv/)<br><sub>Official project · Featured</sub> | A modern workflow for Python versions, virtual environments, dependencies, lockfiles, and project commands. | All levels<br>English | No API key<br>Low risk | 2026-08-31 |
32+
| [pytest documentation](https://docs.pytest.org/en/stable/)<br><sub>Official project</sub> | The official guide to test discovery, assertions, fixtures, parametrization, and maintainable test suites. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
33+
| [Python typing documentation](https://typing.python.org/en/latest/)<br><sub>Official docs</sub> | The canonical home for Python's type-system specification, guides, and typing best practices. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
34+
| [Ruff documentation](https://docs.astral.sh/ruff/)<br><sub>Official project · Featured</sub> | An extremely fast Python linter and code formatter written in Rust, replacing Flake8, Black, isort, and more. | All levels<br>English | No API key<br>Low risk | 2026-09-02 |
35+
| [Mypy documentation](https://mypy.readthedocs.io/en/stable/)<br><sub>Official project</sub> | The standard static type checker for Python to catch bugs and verify type contracts before running code. | Intermediate<br>English | No API key<br>Low risk | 2026-09-02 |
36+
37+
<a id="path-web-apis"></a>
38+
### Web and APIs
39+
40+
Build typed services and applications that connect Python logic to users and other systems.
41+
42+
| Resource | Why it is useful | Level and language | Access and risk | Reviewed |
43+
| --- | --- | --- | --- | --- |
44+
| [FastAPI documentation](https://fastapi.tiangolo.com/)<br><sub>Official docs · Featured</sub> | A direct route from typed Python functions to tested APIs with validation and generated documentation. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
45+
| [Django documentation: First steps](https://docs.djangoproject.com/en/stable/intro/tutorial01/)<br><sub>Official docs</sub> | The official path through Django projects, models, views, templates, forms, tests, and reusable apps. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
46+
| [Flask documentation](https://flask.palletsprojects.com/en/stable/)<br><sub>Official docs</sub> | The maintained reference and tutorial for Flask applications, requests, templates, testing, and deployment. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
47+
| [Pydantic documentation](https://pydantic.dev/docs/validation/latest/get-started/)<br><sub>Official docs</sub> | The primary guide to validating untrusted data and expressing typed contracts at Python system boundaries. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
48+
| [HTTPX documentation](https://www.python-httpx.org/)<br><sub>Official project</sub> | The official reference for synchronous and asynchronous HTTP clients, timeouts, streaming, and transport control. | Intermediate<br>English | No API key<br>Low risk | 2026-08-31 |
49+
| [SQLAlchemy documentation](https://docs.sqlalchemy.org/en/20/)<br><sub>Official project</sub> | The definitive Python SQL toolkit and Object Relational Mapper, providing type-safe database access and migrations. | Intermediate<br>English | No API key<br>Low risk | 2026-09-02 |
50+
| [Alembic documentation](https://alembic.sqlalchemy.org/en/latest/)<br><sub>Official project</sub> | Database migration tool for SQLAlchemy, providing transactional schema changes and rollback support. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-09-02 |
51+
52+
<a id="path-automation"></a>
53+
### Automation
54+
55+
Turn repeatable work into maintainable scripts, browser workflows, and data pipelines.
56+
57+
| Resource | Why it is useful | Level and language | Access and risk | Reviewed |
58+
| --- | --- | --- | --- | --- |
59+
| [pathlib — Object-oriented filesystem paths](https://docs.python.org/3/library/pathlib.html)<br><sub>Official docs</sub> | The standard-library reference for readable, cross-platform file and directory automation. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
60+
| [subprocess — Subprocess management](https://docs.python.org/3/library/subprocess.html)<br><sub>Official docs</sub> | The standard-library contract for launching processes, capturing output, handling failures, and avoiding unsafe shell usage. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-08-31 |
61+
| [Playwright for Python](https://playwright.dev/python/docs/intro)<br><sub>Official docs</sub> | The official Python guide to reliable browser automation, locators, assertions, traces, and isolated contexts. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-08-31 |
62+
| [Scrapy tutorial](https://docs.scrapy.org/en/latest/intro/tutorial.html)<br><sub>Official docs</sub> | The official introduction to crawl structure, extraction, item pipelines, persistence, and responsible operation. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-08-31 |
63+
| [pandas getting started guides](https://pandas.pydata.org/docs/getting_started/index.html)<br><sub>Official docs</sub> | The primary entry point for tabular data loading, cleaning, transformation, analysis, and export. | Beginner<br>English | No API key<br>Low risk | 2026-08-31 |
64+
| [Polars documentation](https://docs.pola.rs/)<br><sub>Official project</sub> | Lightning-fast DataFrame library built on Apache Arrow and Rust, optimized for efficient data pipelines and parallel processing. | Intermediate<br>English | No API key<br>Low risk | 2026-09-02 |
65+
| [DuckDB Python API documentation](https://duckdb.org/docs/api/python/overview)<br><sub>Official project</sub> | Fast in-process analytical SQL engine for automated data transformation, Parquet querying, and embedded analytics. | Intermediate<br>English | No API key<br>Low risk | 2026-09-02 |
66+
67+
<a id="path-ai-agents"></a>
68+
### AI agents
69+
70+
Learn tools, structured output, state, evaluation, and the safety boundaries of agent systems.
71+
72+
| Resource | Why it is useful | Level and language | Access and risk | Reviewed |
73+
| --- | --- | --- | --- | --- |
74+
| [OpenAI Agents SDK](https://openai.github.io/openai-agents-python/)<br><sub>Official docs · Featured</sub> | The official Python toolkit for agents, tools, handoffs, guardrails, sessions, tracing, and orchestration. | Intermediate<br>English | API key typically required<br>Review permissions and side effects | 2026-08-31 |
75+
| [Pydantic AI](https://pydantic.dev/docs/ai/overview/)<br><sub>Official docs · Featured</sub> | Typed agent development built around validated inputs, structured output, tools, testing, and model portability. | Intermediate<br>English | API key typically required<br>Review permissions and side effects | 2026-08-31 |
76+
| [Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro)<br><sub>Official standard · Featured</sub> | The open protocol and reference documentation for connecting AI applications to tools, data, and reusable context. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-08-31 |
77+
| [LangGraph overview](https://docs.langchain.com/oss/python/langgraph/overview)<br><sub>Official docs</sub> | The official Python guide to stateful graph workflows, durable execution, memory, interrupts, and human review. | Advanced<br>English | API key typically required<br>Review permissions and side effects | 2026-08-31 |
78+
| [Google Agent Development Kit](https://adk.dev/)<br><sub>Official docs</sub> | Google's official documentation for developing, evaluating, and deploying modular agent systems. | Advanced<br>English | API key typically required<br>Review permissions and side effects | 2026-08-31 |
79+
| [Instructor documentation](https://python.useinstructor.com/)<br><sub>Official project</sub> | Structured outputs and validation for LLMs powered by Pydantic, enabling predictable tool calling and schema enforcement. | Intermediate<br>English | API key typically required<br>Review permissions and side effects | 2026-09-02 |
80+
| [Model Context Protocol Python SDK](https://github.com/modelcontextprotocol/python-sdk)<br><sub>Official project</sub> | Official Python implementation of the Model Context Protocol for building MCP servers and clients. | Intermediate<br>English | No API key<br>Review permissions and side effects | 2026-09-02 |
81+
| [MCP 2026-07-28 specification release](https://blog.modelcontextprotocol.io/posts/2026-07-28/)<br><sub>Official docs</sub> | The official release announcement for the 2026-07-28 Model Context Protocol specification, covering the stateless redesign and breaking changes. | Intermediate<br>English | No API key<br>Low risk | 2026-09-06 |
82+
| [MCP 2026-07-28 release candidate overview](https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/)<br><sub>Official docs</sub> | The official release-candidate post that enumerates the 2026-07-28 breaking changes and the migration window for SDK maintainers. | Intermediate<br>English | No API key<br>Low risk | 2026-09-06 |
83+
| [Anthropic donating MCP to the Agentic AI Foundation](https://www.anthropic.com/news/donating-the-model-context-protocol-and-establishing-of-the-agentic-ai-foundation)<br><sub>Official docs</sub> | Anthropic's announcement establishing neutral Linux Foundation governance for MCP under the Agentic AI Foundation. | Intermediate<br>English | No API key<br>Low risk | 2026-09-06 |
84+
| [MCP under the Agentic AI Foundation](https://aaif.io/projects/model-context-protocol)<br><sub>Official project</sub> | The Agentic AI Foundation project page for MCP, the neutral governance home for specification development and roadmaps. | Intermediate<br>English | No API key<br>Low risk | 2026-09-06 |
85+
86+
Missing an important official source? [Propose a resource or report a correction](https://github.com/flypythoncom/python/issues/new/choose).
87+
<!-- catalog-index:end -->

0 commit comments

Comments
 (0)