Commit Graph
2877 Commits
Author SHA1 Message Date
Vinta ChenandClaude 4bc79bbfb2 feat: add trl to AI and Agents > Fine-tuning
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:45:10 +08:00
Vinta ChenandClaude 6beac6c074 feat: add google-adk to AI and Agents > Vendor Agent SDKs
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:44:53 +08:00
Vinta ChenandClaude ab9992cf14 feat: add fastmcp to AI and Agents > Model Context Protocol
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:44:39 +08:00
Vinta ChenandClaude 1e9eba4ea7 feat: add mcp, minting AI and Agents > Model Context Protocol
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:44:18 +08:00
Vinta ChenandClaude f4da58fce9 audit: sweep AI and Agents, drop vibevoice, kittentts
The AI and Agents section carried two Speech entries that fail admission, its tier order no longer matched downloads, LiteLLM was not listed under its PyPI name, and unsloth's line missed its desktop app. Downloads are PyPI last-30-day via ClickPy, fetched 2026-09-26.

Removed:
- vibevoice (440/month): the only PyPI release is 0.0.1 from 2025-09-26; the TTS-1.5B model is disabled after misuse and the ASR model now ships in transformers, so nothing pip-installable is maintained.
- kittentts (1,917/month): the README marks it "Developer preview" (fails Stable), and PyPI kittentts is a third-party upload while the project installs from its GitHub release wheel.

Also:
- pydantic-ai promoted to obvious choice above crewai (5.37M vs 2.48M); crewai's pypistats monthly series swung from 28.5M in Aug to 2.4M in Sep and it requires_python <3.14, so it is now a Second Tier challenger.
- claude-agent-sdk reordered above openai-agents (29.1M vs 12.1M).
- LiteLLM renamed to litellm, its canonical PyPI name.
- unsloth description now mentions the desktop app.
- gTTS reordered above funasr by downloads (1.14M vs 282K).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:43:34 +08:00
Vinta Chen cf34fb6ed4 Merge branch 'preview-add-verdict' 2026-10-01 20:37:55 +08:00
Vinta ChenandClaude 7cae320a6f feat: add an add verdict to the verdict preview for new entries
The preview only had keep/drop, so a proposed new entry had to be seeded as drop and flipped to Keep to add it, which was confusing.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-01 20:37:49 +08:00
Vinta Chen 9d1a1b78b6 remove unneeded settings 2026-10-01 19:22:03 +08:00
Vinta Chen a14036fa6f Merge branch 'fix/sponsorship' 2026-09-29 22:42:02 +08:00
Vinta Chen a2801e72c0 update docs 2026-09-29 22:40:55 +08:00
Vinta Chen 4a62a22e90 add FUNDING 2026-09-29 22:38:29 +08:00
VRX 29fa24f619 fix: move logfire after loguru following Standard Library first 2026-09-28 13:15:12 +04:00
vikasrana d12af41a48 Add logfire to Logging section 2026-09-28 13:15:12 +04:00
Vinta Chen 104361bccb Merge branch 'audit-log-overrides' 2026-09-27 21:02:23 +08:00
Vinta ChenandClaude 160d9c01f1 docs: record openviking and seleniumbase audit overrides
docs/audit-logs.md claimed every maintainer override is recorded, but the openviking stability override (PR #3302) and the seleniumbase challenger-evidence override (PR #3284) were missing.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 21:01:58 +08:00
Vinta Chen ec4fd5dd7e Merge branch 'code-chip'
Deploy Website / deploy (push) Canceled after 0s
CI / test (push) Canceled after 0s
2026-09-27 15:19:39 +08:00
Vinta ChenandClaude b6748825e6 style: give inline code in intros a chip appearance
Inline code in category intros and guides inherited the body font with no background, so identifiers like INSTALLED_APPS read as ordinary words.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 15:19:27 +08:00
Vinta Chen 6eaa8a4c58 Merge branch 'fix/todo-pass2' 2026-09-27 15:11:22 +08:00
Vinta ChenandClaude a25bb7ac54 docs: remove stale nested awesome lists for pyramid and fasthtml
awesome-pyramid last pushed 2021-07-08 and awesome-fasthtml 2024-09-08, both stale (checked via GitHub API 2026-09-27).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 15:10:37 +08:00
Vinta ChenandClaude 6a038e3fef docs: fix inaccurate entry descriptions across README
18 entry descriptions overstated, understated, or misattributed their projects, checked against upstream on 2026-09-27 and approved row by row.
- django: "most popular" contradicted by the 2024 JetBrains/PSF survey, where FastAPI leads overall; now uses Django's own tagline.
- joblib: described as pipelining; its docs say parallel computing and disk caching.
- huey: called only "multi-threaded"; it also supports multi-process and greenlet workers.
- numba: updated to its current NumPy-aware wording.
- pytesseract: credited Google as Tesseract's developer, which ended in 2017.
- pennylane: description was narrower than its quantum computing/QML/chemistry scope.
- channels: didn't mention WebSocket support.
- justhtml: left out that it sanitizes untrusted HTML by default.
- akshare: left out its academic-research-only data terms.
- timesfm: left out its non-commercial default weights.
- pyvips: used libvips's own tagline instead of describing it as a binding.
- ultralytics: dropped an unverifiable SOTA claim and added its tracking capability.
- pandera: listed only 3 of its supported dataframe backends.
- sentry-skills: claimed a Python focus and debugging scope; it's the Sentry team's own skill set.
- trailofbits-skills: claimed to be Python-friendly, but only 2 of 85 skills are Python-specific.
- mysqlclient: fork link pointed to SourceForge mysql-python instead of MySQLdb1, and it now notes MariaDB support.
- charset-normalizer: called "the default" of requests, which prefers chardet when installed.
- pynacl: described as binding NaCl directly; it binds libsodium, a NaCl fork.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 15:06:32 +08:00
Vinta ChenandClaude 9cdd11b624 docs: rewrite File Format Processing category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:14 +08:00
Vinta ChenandClaude a04833275a docs: rewrite Template Engines category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:14 +08:00
Vinta ChenandClaude 540f462d4b docs: rewrite WebSocket category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:14 +08:00
Vinta ChenandClaude 36880b3d87 docs: rewrite Web Servers category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude fc09dc7067 docs: rewrite Web Frameworks category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude 86d857055b docs: rewrite Web APIs category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude f293ce3549 docs: rewrite Game Development category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude 56aa4073d7 docs: rewrite Date and Time category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude 2c0486a34a docs: rewrite Data Validation category intro lead
This lead followed the same appositive frame as the other category intro leads ("X, a/the Python Y library ..."), so it read as one template with the category swapped in; it now has its own sentence frame, keeping the same picks and facts.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude edc3db37fa docs: fix 6 section descriptions that misdescribed their sections
Computer Vision's description said nothing; Template Engines claimed lexing; Email claimed parsing and mail server management though yagmail only sends; Build Tools said "compile software" though Invoke and doit are task runners; File Format Processing said "text formats" though it covers ELF, xlsx, docx, and PDF; Package Repositories left out mirrors like bandersnatch. These descriptions show on the category pages.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:13 +08:00
Vinta ChenandClaude 1ed83b7f3d docs: fix 19 entry descriptions that drifted from upstream
langchain used an old composability tagline; transformers named only NLP/vision/audio though it now covers text, vision, audio, video, and multimodal; pgmpy left out its causal reasoning scope; uvicorn listed uvloop/httptools though both are optional extras; django-oauth-toolkit's "goodies" undersold an OAuth 2.0 authorization server; django-unfold used marketing copy instead of a description; pyparsing didn't match its repo's PEG parser description; pdfminer.six didn't say what it does; pyyaml's "implementations" was vague; whenever didn't reflect its Rust-or-pure-Python support; itsdangerous used an outdated upstream tagline; winpython's "Windows 10/11" will go stale; mssql-python's "low memory usage" claim has no upstream source; diskcache repeated the project's own speed benchmark instead of describing it; hishel left out its server-side support; jupyter used IPython's tagline instead of its own; ray used an old tagline; wxPython's sentence was garbled; kivy referenced outdated "NUI" and "Mac OS X" terms.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:53:12 +08:00
Vinta ChenandClaude ec818ebcf8 fix: drop redundant aria-hidden on homepage description rows
Homepage description rows carried aria-hidden="true" on top of hidden, unlike category pages (fixed in 528f9ed); the hidden attribute alone already keeps them from assistive tech while hidden.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:48:02 +08:00
Vinta ChenandClaude 0abd19a99c fix: number rows in sorted order after a column sort
applyFilters walked the static load-order NodeList, so after sorting by a column header, row numbers kept each row's original load-order position instead of counting 1..n down the sorted table.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:48:02 +08:00
Vinta ChenandClaude f0ebe92155 fix: order category page JSON-LD ItemList to match rendered rows
Category pages' JSON-LD ItemList listed entries in download order while the table renders them in README (editorial) order, so structured-data positions didn't match the visible rows.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:47:00 +08:00
Vinta ChenandClaude 5c4607dd0f refactor: reformat clickpy query string with ruff format
ruff format --check flagged this file for the multi-line f-string concatenation.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:46:55 +08:00
Vinta Chen 91927eadf8 Merge branch 'fix/small-fixes' 2026-09-27 14:40:55 +08:00
Vinta ChenandClaude 7a841f2e68 docs: fix duplicate rembg link in image-processing intro
The rembg paragraph linked the same GitHub URL twice; the model-license link now points at the README's models section, where that claim is stated.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:40:55 +08:00
Vinta ChenandClaude 2756fba0ef docs: name Ultralytics' license by family in computer-vision intro
The intro named Ultralytics' license with its version, AGPL-3.0, against the rule that intros name a license by family only.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:40:55 +08:00
Vinta Chen 6a2acf7f93 Merge branch 'fix/readme-todo-descriptions' 2026-09-27 14:35:55 +08:00
Vinta ChenandClaude 169fafddab docs: fix wrong, outdated, and broken README entry descriptions
funasr: dropped stale 170x realtime and 50+ languages claims
easyocr: language count was stale at 40+, verified 80+
apiflask: said Marshmallow-only, missing its Pydantic support
urllib3: "A HTTP" grammar and awkward phrasing
django.db.models: linked to /en/dev/ instead of /en/stable/
pymysql: grammar slip "compatible to mysql-python", a phrase upstream dropped
zvec: unsourced "SQLite of vector databases" superlative
elasticsearch: linked to a redirected elastic.co/products/elasticsearch URL
matplotlib: called "2D" only, ignoring its animated/interactive support
geodjango: linked to /en/dev/ instead of /en/stable/
scipy: retired "ecosystem" tagline
mypy: "compile time" is wrong, Python has no compile-time type checking
tox: missing trailing period
schemathesis: described as OpenAPI/Swagger only, misses GraphQL schema support
polyfactory: grammar slip "support to classes"
mimesis: grammar slip "is a Python library that help you"
pdoc: outdated "Epydoc replacement" framing
pyinfra: grammar slip "A versatile CLI tools and python libraries"
typer: wrongly claimed to be built on Pydantic
copier: "projects templates" grammar slip
pygobject: said GTK+3 only, it now supports GTK 4
dearpygui: grammar slip and missing period
PySide6: claimed to be "same as PyQt6", it's not fully API-compatible
markupsafe: grammar slip in description
python-docx: outdated "Word 2007/2008" framing
mistune: grammar slip "Fastest and full featured pure Python parsers"
pillow: PIL link 404s
wand: MagickWand link went through two redirects to a stub page
vidgear: unverifiable "Most Powerful" superlative
tinytag: format list stale, missing supported formats
panda3d: said "developed by Disney", no longer Disney-only
micropython: vague description, missing microcontroller target
dateparser: language count was vague "dozens", verified 200+ locales
warehouse: outdated "Next generation" tagline
Nuitka: wrongly claimed to support all Python versions
cx-Freeze: grammar slip "It is a Python tool that converts"
dynaconf: wrongly claimed a FastAPI plugin
pip-audit: wrong database name
uv-audit: wrongly claimed malware scanning
pyenv-win: wrongly credited pyenv instead of rbenv-win as its fork origin

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 14:35:55 +08:00
Vinta Chen ae3e309f2e Merge branch 'feature/category-page-redesign' 2026-09-27 12:46:49 +08:00
Vinta ChenandClaude 79f739091e docs: add Built-in Classes Enhancement category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:40 +08:00
Vinta ChenandClaude 5516521bc6 docs: add Supply Chain Security category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:36 +08:00
Vinta ChenandClaude 9627a14e92 docs: add Network Virtualization category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:32 +08:00
Vinta ChenandClaude 8977f4c3d3 docs: add Miscellaneous category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:28 +08:00
Vinta ChenandClaude 046c75a16b docs: add Web Security category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:25 +08:00
Vinta ChenandClaude 64d74fae47 docs: add Distribution category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:21:21 +08:00
Vinta ChenandClaude b7e68cd25a docs: add Microsoft Windows category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:00:56 +08:00
Vinta ChenandClaude eca97d81c4 docs: add Algorithms and Design Patterns category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:00:52 +08:00
Vinta ChenandClaude 28fb6affea docs: add Penetration Testing category intro
Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-27 11:00:49 +08:00