freeCodeCamp / devdocs
git clone https://github.com/freeCodeCamp/devdocs.git
🔥 on GitHub Trending today
API Documentation Browser
—
stars, 24h
+31
stars, 7 days · #1,282
—
stars, 30 days
40k
★ total · +0% this week
2.7k
forks · 202 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageRuby
LicenseMPL-2.0
Created2013-10-24 (12y ago)
Last pushtoday
Watchers691
OwnerOrganization
Seen on GitHub Trending
- 2026-10-20 — #13 weekly in ruby · +31 ★
GitHub topics
Links
- GitHub: github.com/freeCodeCamp/devdocs
- Homepage: https://devdocs.io
- Releases · Issues · Hacker News mentions
README excerpt
# DevDocs — API Documentation Browser DevDocs combines multiple developer documentations in a clean and organized web UI with instant search, offline support, mobile version, dark theme, keyboard shortcuts, and more. DevDocs was created by Thibaut Courouble and is operated by freeCodeCamp. ## We are currently searching for maintainers Please reach out to the community on Discord if you would like to join the team! Keep track of development news: * Join the `#contributors` chat room on Discord * Watch the repository on GitHub **Table of Contents:** Quick Start · Vision · App · Scraper · Commands · Contributing · Documentation · Related Projects · License · Questions? ## Quick Start Unless you wish to contribute to the project, we recommend using the hosted version at devdocs.io. It's up-to-date and works offline out-of-the-box. ### Using Docker (Recommended) The easiest way to run DevDocs locally is using Docker: [code] This will start DevDocs at localhost:9292. We provide both regular and Alpine-based images: - `ghcr.io/freecodecamp/devdocs:latest` - Standard image - `ghcr.io/freecodecamp/devdocs:latest-alpine` - Alpine-based (smaller size) Images are automatically built and updated monthly with the latest documentation. Alternatively, you can build the image yourself: [code] ### Manual Installation DevDocs is made of two pieces: a Ruby scraper that generates the documentation and metadata, and a JavaScript app powered by a small Sinatra app. DevDocs requires Ruby 4.0.7 (defined in `Gemfile`), libcurl, bsdtar (included in macOS, the `libarchive-tools` package on Debian and Alpine), and a JavaScript runtime supported by ExecJS (included in OS X and Windows; Node.js on Linux). On Arch Linux run `pacman -S ruby ruby-bundler ruby-erb ruby-irb`. Once you have these installed, run the following commands: [code] Finally, point your browser at localhost:9292 (the first request will take a few seconds to compile the assets). You're all set. The `thor docs:download` command is used to download pre-generated documentations from DevDocs's servers (e.g. `thor docs:download html css`). You can see the list of available documentations and versions by running `thor docs:list`. To update all downloaded documentations, run `thor docs:download --installed`. To download and install all documentation this project has available, run `thor docs:download --all`. **Note:** there is currently no update mechanism other than `git pull origin main` to update the code and `thor docs:download --installed` to download the latest version of the docs. To stay informed about new releases, be sure to watch this repository. ## Vision DevDocs aims to make reading and searching reference documentation fast, easy and enjoyable. The app's main goals are to: * Keep load times as short as possible * Improve the quality, speed, and order of search results * Maximize the use of caching and other performance optimizations * Maintain a clean and readable user interface * Be fully functi