Awesome Machine Learning: A Curated ML Library Index
Awesome Machine Learning is worth bookmarking if you pick libraries by language rather than by hype. It won't rank C++ gradient-boosting libraries against each other for you, but grouping everything by language then by task beats a generic search when you already know your stack. Want opinions instead of links? Look elsewhere — this is a directory, not a review.
What is Awesome Machine Learning?
Awesome Machine Learning is a GitHub repository that indexes machine learning frameworks, libraries and software by programming language. Inspired by awesome-php, entries are one-line links with descriptions, grouped by language — C, C++, Common Lisp, Clojure and more — then by category like computer vision or NLP. Separate companion files in the same repo cover books, courses, events, blogs and meetups.
What the list covers: languages, categories, and scale
- ✓Organized primarily by programming language, with sections ranging from a single deprecated entry under APL to a long, multi-category spread under C++.
- ✓Within each language, entries are further split into categories like general-purpose machine learning, computer vision, natural language processing, speech recognition, sequence analysis, gesture detection and reinforcement learning.
- ✓Deprecated projects stay in the list but carry an inline [Deprecated] tag instead of being deleted.
- ✓Some entries are annotated with extra context, like a [DEEP LEARNING] tag on frameworks such as Caffe or CNTK.
- ✓Companion files split off books, professional events, courses, blogs/newsletters and meetups from the core framework-and-library list.
- ✓Contribution is gated by an email-verification step the maintainer added to filter out LLM-generated pull requests.
When to use this list
- •You already know your stack (say, C++ or Common Lisp) and want to see what ML libraries exist for it without a general web search.
- •You're choosing between similar tools in one category, like general-purpose ML in C++, and want a quick list to start clicking through.
- •You want to check whether a library you're considering has already been flagged [Deprecated] before you adopt it.
- •You need adjacent resources — books, courses or events — and would rather follow the maintainer's companion files than search separately.
Strengths
- ✓Split by programming language first, then by category (general-purpose ML, computer vision, NLP, speech recognition, reinforcement learning and more), so you can jump straight to, say, C++ computer vision tools instead of scrolling a single giant page.
- ✓Deprecated projects are tagged [Deprecated] in place instead of silently deleted, so you still see what existed and why it's flagged.
- ✓Points out to companion files for books, courses, professional events, blogs/newsletters and meetups, so the same repo covers more than just software links.
- ✓The email-to-prove-you're-human rule for PRs, however blunt, is a filter against low-effort AI-generated submissions polluting the list.
Limitations of an awesome list for ML tooling
- △Every entry is a one-line link and description — there's no comparison, ranking, or opinion on which of several similar tools to pick, so you still have to click into each repo to evaluate it.
- △Coverage is wildly uneven across languages: the APL section is a single deprecated entry, while C++ spans dozens of libraries across general ML, computer vision, NLP, and reinforcement learning.
- △Deprecation relies on someone noticing and tagging a repo [Deprecated] rather than an automated check, so stale or abandoned links can sit in the list between review passes.
- △As of April 2026 the maintainer added a rule requiring contributors to email him personally to prove they're human before a PR gets merged, a response to LLM-generated spam that also means new additions depend on his personal bandwidth to vet.
Other curated machine learning resource lists
Frequently asked questions
Awesome Machine Learning is free to browse — it's a public GitHub repository with no paywall, login or subscription required to read or follow any of its links.
Awesome Machine Learning doesn't publish a fixed update schedule. As of April 2026 the maintainer requires contributors to email him personally to verify they're human before merging a pull request, a step added after a flood of LLM-generated PRs, which likely slows how fast new entries land.
Awesome Machine Learning covers far more than Python — its entries are grouped by programming language, and the file includes sections for languages such as APL, C, C++, Common Lisp and Clojure, among others.
Awesome Machine Learning organizes entries first by programming language, then by category — general-purpose machine learning, computer vision, natural language processing, speech recognition and similar groupings — with each item shown as a one-line link and description.
Awesome Machine Learning keeps deprecated libraries in place rather than removing them, tagging them [Deprecated] instead. Per the README, a listed repository gets that tag once its owner says it's unmaintained or it hasn't been committed to in two to three years.
Awesome Machine Learning links out to separate companion files in the same repository covering free machine learning books, professional ML events, mostly-free online courses, blogs and newsletters, and free local meetups.
Who should try it — and who should skip
Developers who already know which language they're working in and want a fast way to see what ML libraries exist for it — plus anyone vetting a library who wants to check for a [Deprecated] flag before adopting it — get the most out of this. Skip it if you want a ranked top-5, a benchmark comparison, or a tutorial walking you through a specific framework; Awesome Machine Learning hands you links, not judgment calls.
Want a second opinion on awesome-machine-learning?
Ask an AI that can read this page — one click and you get its take on awesome-machine-learning.
