Every awesome list rots, so I made mine delete things
说明与用途
使用 GitHub Actions 自动维护 Laravel AI awesome 列表:自动删除过时包、验证新条目并刷新统计数据。
问题
Awesome lists become stale quickly because they are static and only add new entries, leading to outdated or broken links.
结果
The automated system keeps the Laravel AI awesome list up-to-date by removing stale entries and validating new ones, reducing maintenance effort and ensuring users see accurate, current information.
工作流
- 1. Create a data file with package entries and categories.
- 2. Run a validation script locally to catch duplicates, unknown categories, malformed names, and missing summaries (fails in ~3s).
- 3. Set up a scheduled GitHub Actions workflow (cron 17 6 * * *) to fetch star and install counts from Packagist and GitHub APIs.
- 4. In the workflow, evaluate each entry: remove if GitHub archived, Packagist marked abandoned, or idle > 365 days.
- 5. Update the list with fresh statistics and a timestamp of the last refresh.
- 6. Commit and push changes; PRs are automatically validated before merging.
- 7. Publish the updated list on GitHub.
- 8. Encourage contributors to add new entries manually, relying on the automated removal process to keep the list current.
证据
Three ways an entry earns removal: archived on GitHub, marked abandoned on Packagist, or idle > 365 days.
Validation runs before the network does: duplicate entries, unknown categories, malformed vendor/package names, missing summaries.
- 记录日期: 2026-09-15T12:50:45.739Z