Commit Graph

1612 Commits

Author SHA1 Message Date
Vinta Chen
8fbe0e0394 fix(readme): sort tinycss2 alphabetically in HTML/XML section
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 16:41:36 +08:00
Vinta Chen
ef51d9a7aa refactor(html-xml): replace cssutils with tinycss2
cssutils is unmaintained; tinycss2 is the actively maintained
low-level CSS parser and generator for Python.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 16:38:48 +08:00
Vinta Chen
f11468b262 remove(readme): remove python-cqrs from Design Patterns
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 16:36:55 +08:00
Vinta Chen
b12d80f67e fix(readme): correct playwright entry name to playwright-python
The project name in the entry was 'playwright' but the GitHub repository
is 'playwright-python', which is also how the Python package is referred
to. Updated the display name to match.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 15:42:35 +08:00
Vinta Chen
82e0a67507 docs: change description from 'curated' to 'opinionated'
Aligns README tagline with the wording already used on the website.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 14:45:20 +08:00
Vinta Chen
2a5dc1a133 docs: update tagline from opinionated to curated
Align the README intro with the site's actual positioning. The
'opinionated' framing was inaccurate and inconsistent with how the
project is described elsewhere.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 14:37:55 +08:00
Vinta Chen
15b0ff3b07 fix: promote flower and pyenv-win to standalone entries
flower was a sub-entry under celery, pyenv-win under pyenv. Both are
standalone projects that deserve their own rows on the website.

Moved flower from Task Queues to Admin Panels since it is a monitoring
and web admin tool, not a task queue itself. Placed pyenv-win as a
top-level entry in Environment Management.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 02:43:41 +08:00
Vinta Chen
f7b51a6207 fix: update entries to use GitHub URLs as primary links
spark.ml, django.db.models, and geodjango were pointing to
documentation pages as their primary link rather than the
GitHub repository. Move docs URLs inline as descriptive links
so the primary link follows the standard GitHub-first convention.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-22 01:48:36 +08:00
Vinta Chen
3417dce4c1 use github repo url for openstack 2026-03-22 01:40:51 +08:00
Vinta Chen
c87fdacd7b docs: remove Editor Plugins section and fold RPC into Web Servers
Remove the Editor Plugins and IDEs section — modern editors handle Python
via LSP natively, making a curated list of editor plugins less useful.

Consolidate the standalone RPC Servers section into a subsection under
Web Servers to reflect that grpcio and rpyc are network server libraries,
not a separate category.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 16:50:48 +08:00
Vinta Chen
ff9114784a docs: update Email section description and replace pymssql with mssql-python
Expand the Email section description to mention mail server management.
Replace the unmaintained pymssql entry with the official Microsoft
mssql-python driver, which is actively maintained and built on ODBC.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 16:47:11 +08:00
Vinta Chen
6b59080208 docs: remove more unmaintained/redundant entries, replace hashids with sqids
Dead/unmaintained:
- elpy (maintainer stepped down, superseded by Eglot)
- jedi-vim (superseded by native LSP clients)
- python-mode (no plugin development, only CI commits)
- fpp/PathPicker (abandoned by Facebook, last release 2022)
- mouse (last release 2020, pynput covers it)
- karateclub (last release Dec 2022)

Redundant/too niche:
- taskflow (OpenStack-internal, 372 stars)
- django-pipeline (overlaps django-compressor)
- hermescache (~1k downloads/week, solo maintainer)
- pylibmc (last release 2022, pymemcache has taken over)

Replaced:
- hashids -> sqids (hashids project rebranded, dead since 2020)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 16:38:43 +08:00
Vinta Chen
7f21136c94 docs: remove unmaintained and redundant entries
Dead/unmaintained:
- html5lib (no release since 2019)
- fsociety (no commits since 2022)
- optimus (no development since 2023)
- flanker (abandoned by Mailgun)
- imbox (last release Nov 2022)
- green (dormant, pytest dominates)

Redundant/superseded:
- eyed3 (subset of mutagen, GPL)
- odmantic (redundant with beanie)
- audioflux (not established, librosa dominates)
- treq (niche Twisted HTTP client, 606 stars)
- cliff (OpenStack-internal, 260 stars)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 15:54:04 +08:00
Vinta Chen
7512f63a18 docs: update repository URLs to reflect project org transfers
Update GitHub URLs for projects that have moved to new organizations or
official accounts: jax, keras, lightgbm, gensim, fastapi, uvicorn,
authlib, django-oauth-toolkit, flask-admin, cassandra-driver, akshare,
altair, bqplot, pymc, python-cqrs, ptpython, prospector, isort,
schemathesis, django-debug-toolbar, awesome-sphinxdoc, YouCompleteMe,
SpiffWorkflow, rpyc, typer, dearpygui, ftfy, textdistance, pendulum,
poetry, websockets. Also updates keras description to reflect multi-backend
support and pymc description to match current project scope. Removes PTVS
(archived) entry.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:48:12 +08:00
Vinta Chen
e8d3d2984d docs: remove unmaintained entries and add awscli
Remove entries that are unmaintained, low-quality, or superseded:
werkzeug (WSGI server section), feincms, ultrajson, schema, voluptuous,
bpython, splinter, s3cmd, kafka-python, streamparse, zerorpc,
bashplotlib, quads, dejavu, kapre, pyAudioAnalysis, harfang3d,
configobj.

Add awscli to Cloud Providers as a widely-used modern alternative.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:43:06 +08:00
Vinta Chen
f50bd8fc00 docs: remove unmaintained entries and replace youtube-dl with yt-dlp
Remove eve, cornice, python-jose, python-readability, yapf, py2app, and
py2exe as unmaintained or superseded. Replace youtube-dl with yt-dlp,
its actively maintained fork.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:34:50 +08:00
Vinta Chen
7ead57f654 clean up 2026-03-21 15:28:47 +08:00
Vinta Chen
5c05dabc0e add back ultrajson 2026-03-21 15:26:09 +08:00
Vinta Chen
77b27508ab docs: remove unmaintained entries and update PyPDF2 to pypdf
- Remove polyglot, pkuseg-python, snownlp (Chinese NLP), lightfm,
  genshi, flask-assets, webassets, django-cache-machine, ultrajson,
  bowler, doublex, httpretty, mixer, logbook, path.py, audioread,
  TimeSide, cocos, clpython, PeachPy, pyston, pluginbase
- Replace PyPDF2 with pypdf (the maintained successor)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:23:27 +08:00
Vinta Chen
1d09426061 docs: remove unmaintained entries and add modern alternatives
- Web APIs: add django-ninja and apiflask, remove django-tastypie, flask-restful, and sandman2
- Web Scraping: remove grab and newspaper (unmaintained)
- Data Validation: remove colander and schematics (low activity)
- Testing: remove nose2 (superseded by pytest)
- Profiler: replace vprof with scalene (actively maintained, more capable)
- Package Management: remove mamba (redundant with conda)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:20:01 +08:00
Vinta Chen
55e922e594 docs: remove unmaintained or low-quality entries across multiple categories
Removed entries that no longer meet quality or maintenance standards:
- NLP: langid.py (unmaintained)
- Web Scraping: requests-html, toapi (unmaintained)
- Search: elasticsearch-dsl-py (redundant alongside elasticsearch-py)
- DevOps: python-lambda, delegator.py (unmaintained)
- HTML/XML: untangle (unmaintained)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:13:32 +08:00
Vinta Chen
96d44fcf25 docs: remove low-quality entries and consolidate cytoolz into toolz
Remove makesite, pysimdjson, python-rapidjson, python-ds, buildout,
Levenshtein, and arrow as standalone entries due to low quality or
maintenance concerns. Fold cytoolz reference into the toolz entry to
reduce duplication while preserving discoverability.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:07:52 +08:00
Vinta Chen
f52c85a151 docs: remove unmaintained or superseded entries across multiple sections
Drops entries that are abandoned, redundant, or no longer meet quality bar:
- NLP: pattern (unmaintained since 2018)
- Computer Vision: tesserocr (superseded by pytesseract)
- Recommender Systems: spotlight (archived, no longer maintained)
- API: flask-api (deprecated in favour of flask-restful), hug (archived)
- Caching: beaker (unmaintained, WSGI-era legacy)
- File Formats: textract (unmaintained, fragile system deps)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 15:04:54 +08:00
Vinta Chen
61e6f442dc refactor: merge and reorganize sections for better discoverability
- Web Scraping: split into Frameworks and Content Extraction subcategories
- DevOps: rename SSH-style Deployment to Deployment (absorbs Serverless),
  merge Process Management into Monitoring as Monitoring and Processes,
  collapse Backup/Chaos Engineering/Git Hooks into Other
- Fold standalone Processes section into DevOps > Monitoring and Processes
- Merge Audio Processing and Video Processing into Audio & Video Processing
- Remove Processes from ToC; update Audio/Video ToC entry

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 14:58:05 +08:00
Vinta Chen
0c4d411ae8 refactor: consolidate thin subcategories and split Data Analysis by domain
- Merge URL Manipulation (single entry) into HTTP Clients
- Move python-slugify into General Text Processing, removing the one-entry Slugify subcategory
- Consolidate YAML, TOML, and CSV subcategories into a single Data Formats group
- Split Data Analysis into General and Financial Data subcategories to improve discoverability

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 14:52:23 +08:00
Vinta Chen
1fa8847631 docs: remove unmaintained or low-quality entries across multiple categories
Removes 14 entries from Asset Management, Web Content Extracting, URL
Parsing, Search, Testing, Task Queues, Subprocesses, Network
Virtualization, Text / Slugify, HTML & XML, File Format Processing,
Audio, and Video sections.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 14:46:22 +08:00
Vinta Chen
1bc421867c docs: add missing well-known libraries across multiple sections
Adds entries for bottle, robyn, starlette, connexion, strawberry,
flask-socketio, trafilatura, cachetools, ibis, modin, pandera,
chalice, grpcio, anyio, dateparser, python-dotenv, and mitmproxy.
Also removes zappa (deprecated/unmaintained) and graphene (replaced
by strawberry).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-21 14:37:25 +08:00
Vinta Chen
d7ffd63fa7 docs: fix stale cross-reference link in Web Frameworks section
Update the 'Also see' link from the old absolute GitHub URL pointing
to #restful-api to the current relative anchor #web-apis, matching
the section rename in a previous refactor.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 21:10:55 +08:00
Vinta Chen
bec981806a refactor: reorganize thematic groups and reorder sections within groups
Restructures the top-level ToC groups for better logical cohesion:
- Split 'Web & API' into 'Web' (frameworks, servers, CMS) and
  'HTTP & Scraping' (clients, scraping, URL, email)
- Move 'Database & Storage' earlier in the ToC, before 'Data & Science'
- Merge 'Web Content Extraction' and 'Web Crawling' into a single
  'Web Scraping' section
- Rename 'Content & Media' to 'Text & Documents' and 'Media' (split)
- Rename 'System & Runtime' to 'Python Language' and 'Python Toolchain'
- Rename 'Security & Auth' to 'Security'; move Authentication to Web group
- Rename 'Development Tools' to 'Developer Tools', 'DevOps & Infrastructure' to 'DevOps'
- Reorder sections within groups to reflect learning progression
  (e.g., Deep Learning before Machine Learning in AI & ML)
- Move Hardware and Microsoft Windows to Miscellaneous group
- Add s3cmd to DevOps and youtube-dl to Command-line Tools
- Update CONTRIBUTING.md example group names to match new labels

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 21:06:08 +08:00
Vinta Chen
fd9b2665ed docs: reorganize ToC into thematic groups and update contributing guide
Group the Table of Contents entries under bold section headers (AI & ML,
Web & API, Data & Science, etc.) so the README is easier to navigate at
a glance. Update CONTRIBUTING.md to reflect that new sections should be
placed under the appropriate thematic group instead of in a flat list.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 18:42:58 +08:00
Vinta Chen
efc08daa5e docs: reorganize AI, Data Visualization, GUI, and Scientific Computing into subcategories
Group flat lists into labeled subcategories to improve scannability and navigation.
Also remove entries that don't meet curation standards and fix the toga repo URL.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 18:00:51 +08:00
Vinta Chen
1272d7059e refactor: flatten subcategories and rename sections for clarity
- Remove subcategory groupings (General, Financial Data, Mail Servers, etc.) in favor of flat alphabetical lists
- Rename sections to plural forms: Downloader -> Downloaders, Job Scheduler -> Job Schedulers, Static Site Generator -> Static Site Generators, Template Engine -> Template Engines, Web Content Extracting -> Web Content Extraction
- Rename Specific Formats Processing -> File Format Processing
- Move financial data libraries (akshare, edgartools, openbb, yfinance) from Downloaders to Data Analysis
- Fix TOC ordering: Database/Database Drivers, Web APIs, Web Servers entries moved to alphabetical positions

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 17:50:33 +08:00
Vinta Chen
0183bf15ae refactor: move entries to more accurate categories
- flower -> Task Queues (Celery sub-entry, not Admin Panels)
- vllm, rasa, diffusers, transformers -> AI Agents (not Deep Learning / ML)
- ccb -> AI Agents (not CLI Productivity Tools)
- code-graph-rag -> AI Agents (not Code Analysis)
- kafka-python -> Distributed Computing / Stream Processing (not NoSQL Databases)
- scapy -> Networking (not Hardware)
- sentry-python -> DevOps / Monitoring (not Logging)
- joblib -> Distributed Computing (not Job Scheduler)
- doit -> Build Tools (not Job Scheduler)
- karateclub -> Machine Learning (not Science)
- numba -> Science (not Python Implementations)
- diagrams -> Documentation (not Data Visualization)
- mkdocs -> Documentation (not Static Site Generators)
- pyelftools -> Text Formats / General (not Debugging)
- weasyprint -> Text Formats / PDF (not HTML/XML)
- webargs -> RESTful API (not URL Parsing)
- kafka-python stream sub-entry added, flower celery sub-entry added

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 17:46:54 +08:00
Vinta Chen
dd3394963d refactor: consolidate and reorganize categories for clarity
- Merge ASGI Servers and WSGI Servers into a single Web Servers section
- Merge RESTful API and GraphQL into Web APIs section
- Move Permissions entries under Authentication as a subsection
- Move Refactoring entries under Code Analysis as a subsection
- Move Serverless Frameworks entries under DevOps as a subsection
- Move Shell (xonsh) under CLI Tools
- Move Internationalization (babel) under Text Processing
- Move Robotics (PythonRobotics) under Science
- Remove standalone Internationalization, Permissions, Refactoring, Serverless Frameworks, Shell, Robotics, and GraphQL sections
- Fix capitalization in TOC entries (Penetration Testing, Framework Agnostic)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 17:41:11 +08:00
Vinta Chen
c0fc30cec6 docs: add new entries and reorganize existing ones across multiple categories
Adds new library entries: autogen, crewai, dspy, smolagents (AI/Agents),
invoke (Build Tools), django-cms (CMS), bandit (Code Analysis), gradio
(Data Visualization), chromadb (Database), pre-commit (DevOps), aiohttp
(HTTP), dagster (Job Scheduler), catboost, lightgbm (Machine Learning),
tortoise-orm (ORM), msgpack (Serialization), nox, playwright (Testing),
and py-sdl2 (Game Dev).

Removes stale or low-quality entries: howdoi, try, cuisine, django-schedule,
plan, gym, metrics, pydal, fastFM, tensorrec, mamba (testing), toonify.

Fixes alphabetical ordering for uv/virtualenv, pip/pipx, py-sdl2/pygame.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 17:27:40 +08:00
Vinta Chen
c5376618b8 docs: update Environment and Package Management entries
- Move pyenv-win as sub-entry under pyenv
- Add uv to Environment Management
- Remove pip-tools sub-entry from pip
- Add pipx and mamba entries
- Remove hatch entry
- Update uv description in Package Management

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-20 16:54:56 +08:00
Jinyang
7baa887589 remove bcbio-nextgen 2026-03-19 09:51:28 +04:00
Vinta Chen
4077051813 docs: clarify VS Code Python extension entry name
Rename 'Python' to 'Python for VSCode' in the Editor Plugins section
to disambiguate the extension from the Python language itself.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:29:07 +08:00
Vinta Chen
46caf8cec4 docs: add AI and Agents category with autoresearch
New category for LLM integrations, agent frameworks, and AI applications.
Move agno, instructor, langchain, llama_index, praisonai, pydantic-ai,
ragflow from Machine Learning. Add autoresearch (karpathy).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:45:24 +08:00
Vinta Chen
9761bac1e0 docs: lowercase 8 project names to match their import names
eyeD3→eyed3, Gooey→gooey, gTTS→gtts, MechanicalSoup→mechanicalsoup,
MonkeyType→monkeytype, PraisonAI→praisonai, PyMySQL→pymysql,
Zappa→zappa.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:39:49 +08:00
Vinta Chen
e70b25d42d docs: fix tkinter entry to use stdlib format
Lowercase name, link to official docs, add stdlib label.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:33:44 +08:00
Vinta Chen
55db9c7f64 docs: rename Box to box, PathPicker to fpp
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:30:57 +08:00
Vinta Chen
2cbb2d7c60 docs: normalize entry names to lowercase
Standardize display names to lowercase across all categories (audioFlux,
EasyOCR, UltraPlot, PySpark, cx_Freeze, OpenBB, DearPyGui, WeasyPrint,
Pillow, Quads, TaskFlow, Metrics, spaCy, funNLP, PynamoDB, Surprise,
Bowler, zeroRPC, SimPy, XlsxWriter, HTTPretty) for consistent formatting.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 01:27:54 +08:00
Vinta Chen
8a131b7874 docs: rename Spark ML to spark.ml in Machine Learning
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 00:58:11 +08:00
Vinta Chen
7a0abca2e5 docs: remove dataclasses and DottedDict from Data Structures
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 00:58:09 +08:00
Vinta Chen
5036fe8201 docs: normalize entry names to lowercase for django.db.models and reportlab
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 00:49:52 +08:00
Vinta Chen
3d534f57d7 docs: lowercase H2O and PyMC display names
H2O→h2o, PyMC→pymc (drop version suffixes from repo names).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 00:44:23 +08:00
Vinta Chen
6ad2a77bb4 docs: rename Jupyter Notebook (IPython) to jupyter
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 00:43:01 +08:00
Vinta Chen
fb3112d8d2 docs: match 11 more display names to their GitHub repo names
Django MongoDB Backend→django-mongodb-backend, Karate Club→karateclub,
Open Babel→openbabel, Robot Framework→robotframework,
Feature-engine→feature_engine, memory-graph→memory_graph, Jinja2→jinja,
Cocos2d→cocos, LlamaIndex→llama_index, VCR.py→vcrpy,
Spiff→SpiffWorkflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 00:40:50 +08:00
Vinta Chen
4a0db0dee6 docs: match project display names to their GitHub repo names
Update 79 entries where the display name differed from the GitHub
repository name only in casing (e.g. NumPy→numpy, LangChain→langchain,
SQLAlchemy→sqlalchemy, DuckDB→duckdb).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 00:11:45 +08:00