free-programming-books — A curated directory of free programming resources

Project Overview

Among the most-starred repositories on GitHub, this project occupies an unusual position: it’s not a framework, library, or tool that developers run, but a curated directory of free learning resources spanning dozens of languages and subjects. Originally forked from a StackOverflow thread in 2012, it has since evolved into one of the web’s most comprehensive indexes of freely available programming books, with the Ebook Foundation stepping in to steward its growth as a non-profit initiative. The repository’s sheer scale — over 387,000 stars and thousands of contributors — speaks to a fundamental need in the developer ecosystem: reliable, community-vetted access to educational materials without paywalls. Unlike commercial aggregators or publisher-driven lists, this project’s value lies entirely in its editorial curation and its commitment to keeping resources genuinely free, not just ‘free-to-try’ or limited-time offers. The maintenance burden here is non-trivial, as link rot and shifting licensing terms require constant vigilance from the community.

What It’s For

This is the closest thing the programming world has to a canonical reference for free learning materials. If you’re a self-taught developer looking to break into a new language, a student assembling a curriculum without institutional access to textbooks, or an experienced engineer exploring unfamiliar territory like functional programming or systems design, this list offers a starting point that has already been filtered through community consensus. The project’s scope is deliberately broad — it covers everything from assembly language to web development, in languages from Arabic to Vietnamese — which means it serves as a discovery layer more than a deep dive. Where it excels is in surfacing high-quality, full-length resources (often complete books or comprehensive tutorials) rather than scattered blog posts or documentation snippets. That said, the sheer volume can be overwhelming, and the directory structure rewards users who know what they’re looking for rather than those browsing for inspiration. For the latter, the companion search site is practically essential.

How to Use It

The repository itself is structured as a flat directory of Markdown files organized by language and topic, with each file containing a bulleted list of resources. The primary workflow is browsing the repository tree or using the search interface at ebookfoundation.github.io/free-programming-books-search, which indexes the entire collection. For contributors, the process involves editing these Markdown files via pull request, following strict formatting rules and quality guidelines documented in CONTRIBUTING.md. The project’s maintenance model relies on distributed community effort — anyone can propose additions or flag broken links, and maintainers review submissions for licensing compliance and resource quality. This decentralized approach keeps the list current but introduces latency; a newly published free book might take weeks to appear, while a dead link might persist until someone reports it. The Hacktoberfest badge visible in the README signals that the project actively courts seasonal contributors, which helps distribute the maintenance load but can also lead to a spike in lower-quality PRs that require triage.

Browse the books/ directory by language

Use the dynamic search interface to find books by title, author, or keyword across the entire collection

Search at ebookfoundation.github.io/free-programming-books-search

Follow the contribution guidelines to add a new free programming book, ensuring it meets licensing and quality requirements

Submit a new resource via pull request

Recent Updates

Latest Release: N/A (N/A)

This project does not follow traditional semantic versioning; updates are continuous via pull requests merged into the main branch. The repository is maintained as a living document rather than releasing discrete versions.

Commit activity remains high, with hundreds of contributors adding resources and fixing broken links on an ongoing basis. The project’s trajectory reflects the broader open education movement — as more publishers and authors release free content, the list grows organically. The inclusion of Hacktoberfest 2025 stats in the README indicates active community engagement strategies.


Sources & Attributions

[1] Repository has 387,837 stars as of analysis date — EbookFoundation/free-programming-books [2] Originally a clone of a StackOverflow thread from 2012 — EbookFoundation/free-programming-books README [3] Administered by the Free Ebook Foundation, a US non-profit — EbookFoundation/free-programming-books README [4] Search interface available at ebookfoundation.github.io/free-programming-books-search — EbookFoundation/free-programming-books README [5] Hacktoberfest 2025 participation indicated in README badges — EbookFoundation/free-programming-books README