Commit Graph

2054 Commits

Author SHA1 Message Date
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
bac9514660 Merge pull request #2979 from JinyangWang27/remove-bcbio-nextgen
remove bcbio-nextgen
2026-03-19 09:52:59 +04:00
Jinyang
7baa887589 remove bcbio-nextgen 2026-03-19 09:51:28 +04:00
Vinta Chen
716464e726 fix: improve CSS polish with active states, font smoothing, and text wrapping
Add active-state press feedback (scale transform) to buttons, filter clear,
and tags. Add moz-osx-font-smoothing for consistent antialiasing on Firefox/Mac.
Apply text-wrap: balance to headings and text-wrap: pretty to body text and
expanded row descriptions. Add text-underline-offset to links and highlight
active table rows with bg-hover.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:41:56 +08:00
Vinta Chen
4ea3134ba3 fix: move group tag into category cell and hide on mobile
- Relocate group tag from expand row to category column so it appears inline beside the category tag
- Add margin between stacked tags with .col-cat .tag + .tag spacing rule
- Remove fixed width from .col-cat; narrow .col-name from 35% to 30% to give category column room
- Hide .tag-group on screens ≤900px and widen .col-name to 50% to reclaim space

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:36:40 +08: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
e967722a5d fix: improve mobile table layout with auto sizing and tighter spacing
Switch table-layout back to auto on mobile to let columns size naturally,
add uniform cell padding overrides, shrink num/arrow columns further,
pin stars column width, reduce edge padding, and left-align the number
column to avoid awkward right-aligned single digits.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:24:23 +08:00
Vinta Chen
ca350ebaf9 fix: use table-layout fixed on mobile to prevent column width inflation
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:11:23 +08:00
Vinta Chen
fb2a693dbb fix: reduce number and arrow column widths on mobile for tighter table layout
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:05:34 +08:00
Vinta Chen
ac9b69a0b2 fix: reduce table padding on mobile for better centering and arrow visibility
Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-19 02:00:07 +08:00
Vinta Chen
926ba010b7 chore: split AI & Data into AI & ML and Data & Science
AI & ML: AI and Agents, Machine Learning, Deep Learning, Computer Vision,
Natural Language Processing, Recommender Systems, Robotics.

Data & Science: Data Analysis, Data Validation, Data Visualization,
Geolocation, Science, Quantum Computing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:55:18 +08:00
Vinta Chen
8b518664d8 chore: redistribute Specialized group across existing groups
Remove the Specialized catchall group. Redistribute its categories:
- Web & API: Admin Panels, CMS, Email, Static Site Generator, URL Manipulation
- AI & Data: Geolocation, Robotics
- Content & Media: Game Development, Internationalization
- System & Runtime: Date and Time, Hardware, Microsoft Windows
- Development Tools: Algorithms and Design Patterns

Only Miscellaneous remains ungrouped (falls into Other).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:54:46 +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
6204196083 docs: add naming convention rule to CONTRIBUTING.md
Prefer PyPI package name as display name so developers can copy it
directly to pip install. Fall back to GitHub repo name if not on PyPI.
Also update examples to use lowercase PyPI names.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 01:24:26 +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
Vinta Chen
65db5ab5e7 Merge pull request #2975 from vinta/chore/cleanup
Cleanup: replace deprecated entries, fix categories, add new entries
2026-03-18 23:52:00 +08:00
Vinta Chen
79c0be0a5c docs: move docling and textract to Text Processing
docling (document-to-structured-data conversion) and textract (text
extraction from Office/PDF files) are document parsing tools, not
data analysis or web scraping tools, so Text Processing > General
is a more accurate placement.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:50:25 +08:00
Vinta Chen
a7c5d84ce9 docs: split Downloader into General and Financial Data subcategories
The financial data tools (akshare, edgartools, OpenBB, yfinance) are a
distinct cluster from general-purpose downloaders (s3cmd, youtube-dl),
so grouping them into subcategories improves discoverability.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:50:13 +08:00
Vinta Chen
057081ff91 docs: move Beanie to ORM > NoSQL Databases from Database Drivers
Beanie is an ODM (Object-Document Mapper), not a raw database driver,
so it fits better under ORM > NoSQL Databases alongside mongoengine and ODMantic.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:49:59 +08:00
Vinta Chen
d48c1b8904 docs: move streamlit to Data Visualization from Admin Panels
streamlit is primarily a data visualization and dashboard framework,
so it better fits the Data Visualization category.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:49:47 +08:00
Vinta Chen
02dab03848 chore(text-processing): restructure Markdown subsection and add TOML
- Replace Jimmy, Mistune, Python-Markdown with markdown-it-py, markdown,
  markitdown, and mistune (lowercased names, added CommonMark parser)
- Add new TOML subsection with stdlib tomllib entry

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:41:54 +08:00
Vinta Chen
5f44045f64 chore(files): move markitdown to Text Processing > Markdown
markitdown converts documents to Markdown, so it belongs under the
Markdown subcategory of Text Processing rather than the generic Files
section.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:41:45 +08:00
Vinta Chen
0cd4ccaec2 chore(dates-times): replace pytz with zoneinfo
Remove the third-party pytz in favour of the stdlib zoneinfo module
(Python 3.9+), which ships the IANA tz database directly.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:41:32 +08:00
Vinta Chen
7b8002426d feat(website): add co-maintainer credit and bump hero-sub font size
- Replace 'Curated by @vinta since 2014' with 'Maintained by @vinta
  and @JinyangWang27' to reflect the new co-maintainer
- Increase .hero-sub font size from --text-sm to --text-base for
  better readability

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:30:47 +08:00
Vinta Chen
56ccdfae8f Merge pull request #2973 from vinta/fix/replace-non-github-urls-with-github-repos
Replace non-GitHub URLs with GitHub repo URLs
2026-03-18 23:24:37 +08:00
Vinta Chen
f7a5ed8050 docs: move Automatic Rejection section to end; note GitHub URL preference
Positive criteria (Quality Requirements, Acceptance Criteria, Entry
Format) now appear before the rejection list, reducing friction for
contributors reading top-to-bottom. Adds a note that GitHub URLs are
preferred because awesome-python.com ranks entries by GitHub stars.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:15:39 +08:00
Vinta Chen
c1a4e69309 fix: replace non-GitHub URLs with GitHub repo URLs in README
Projects on awesome-python.com are ranked by GitHub stars; linking
directly to GitHub enables star fetching and improves discoverability.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 23:15:34 +08:00
Vinta Chen
fa00f10922 Merge pull request #2972 from vinta/feature/fetch-stats-workflow
ci: consolidate star fetch into deploy workflow with Actions cache
2026-03-18 22:57:43 +08:00
Vinta Chen
957d685ff4 ci: run fetch-stars step on every workflow trigger
Removed the 'if: github.event_name == schedule' guard so the step also
runs on manual dispatches and push-triggered deploys, not only on the
nightly schedule.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:55:29 +08:00
Vinta Chen
6148c13c0c feat: skip fetching repos whose cache entry is still fresh
Introduce CACHE_MAX_AGE_HOURS (12 h) and filter current_repos before
the fetch loop so repos that were updated recently are not re-requested.
Prints a breakdown of fetched vs cached count.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:55:21 +08:00
Vinta Chen
484515775f gitignore website/data 2026-03-18 22:48:20 +08:00
Vinta Chen
0d9dfb2713 ci: consolidate star fetch into deploy workflow using Actions cache
Replace the separate fetch-github-stars.yml workflow (which committed
star data back to git) with an inline fetch step in deploy-website.yml.
Star data is now stored in Actions cache between runs, eliminating the
workflow_run trigger chain and the need to track github_stars.json in
the repository.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:44:29 +08:00
Vinta Chen
3c3f371791 fix: use canonical GitHub Actions bot email with numeric ID
The generic email 'github-actions[bot]@users.noreply.github.com' does not
match GitHub's actual bot account. Using the numeric-prefixed form
'41898282+github-actions[bot]@users.noreply.github.com' ensures commits
made by the workflow are correctly attributed to the bot account.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:28:25 +08:00
Vinta Chen
bfed6a5c81 ci: trigger deploy after fetch-github-stars workflow succeeds
Adds a workflow_run trigger so the site is rebuilt whenever fresh
star data lands on master, in addition to the existing push trigger.
The build job guard ensures it only runs on direct pushes or when
the upstream workflow concluded successfully.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:18:10 +08:00
Vinta Chen
bbe145cb36 ci: add workflow to fetch and commit GitHub stars daily
Runs on a nightly schedule, installs deps with uv, calls make
fetch_github_stars, and pushes an update commit only when the
star data file actually changed.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:18:04 +08:00
Vinta Chen
d65c6ccd64 refactor: rename fetch_stats target and remove cache age gating
Rename the Makefile target from fetch_stats to fetch_github_stars to
match the script name. Remove CACHE_MAX_AGE_DAYS and the staleness
check so every run fetches all repos unconditionally.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 22:08:35 +08:00
Vinta Chen
b6d1bf9307 ci: use uv dependency groups and Makefile target for deploy workflow
Switches install step from --no-dev to --group build for explicit
dependency group selection, and replaces the bare python invocation
with `make build` to use the canonical build entrypoint.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 21:33:57 +08:00
Vinta Chen
ab18c7e54c refactor: reformat build.py to Black style and add llms.txt output
Reformats dict and list literals to trailing-comma multiline style
throughout. Also copies README.md to llms.txt in the site output so
LLM crawlers can discover the full content.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 21:33:51 +08:00
Vinta Chen
539edc4e20 Merge pull request #2971 from vinta/feature/markdown-it-py-parser
feat: replace regex README parser with markdown-it-py AST parser
2026-03-18 20:35:06 +08:00
Vinta Chen
280f250ce0 feat: migrate README parser to markdown-it-py and refresh website
Switch readme_parser.py from regex-based parsing to markdown-it-py for
more robust and maintainable Markdown AST traversal. Update build pipeline,
templates, styles, and JS to support the new parser output. Refresh GitHub
stars data and update tests to match new parser behavior.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-18 20:33:36 +08:00