DevDocs Joins freeCodeCamp to Accelerate Access to Developer Documentation

DevDocs is joining the freeCodeCamp community

As a full-stack developer, I know first-hand how critical it is to have easy access to reliable, up-to-date documentation. Whether I‘m exploring a new technology, troubleshooting a tricky bug, or just need to refresh my memory on a particular API, having the right docs at my fingertips saves precious time and mental energy.

That‘s why I was thrilled to learn that DevDocs, one of the most beloved documentation resources in the developer community, is joining forces with freeCodeCamp. This union brings together two powerful platforms with a shared mission of making learning to code and using new technologies as accessible as possible.

What is DevDocs?

In case you‘re not familiar, DevDocs is an open source web app that aggregates documentation for a huge range of developer tools into a single, searchable interface. Instead of having to scour the web or juggle dozens of tabs to find what you need, DevDocs brings it all together in one place.

With a clean, intuitive UI and lightning-fast search, DevDocs has become an indispensable part of many developers‘ workflows. As of March 2023, the site receives over 100,000 unique visitors per day and serves up more than 2 million documentation pages per month.

DevDocs Usage Statistics

One of DevDocs‘s killer features is its offline support. Once you‘ve browsed a set of docs on the web, they are cached locally in your browser. This means you can access the full documentation for your favorite tools even without an internet connection. As someone who frequently codes on the go, this has been a lifesaver more times than I can count.

The History of DevDocs

To really understand what makes DevDocs special and why its joining freeCodeCamp is such an exciting development, it helps to know a bit about its history.

DevDocs is the creation of Thibaut Courouble, a French software engineer currently leading development at Shopify. Thibaut started building DevDocs in March 2013 as a personal tool to make it easier to find and reference documentation while coding.

As Thibaut shared with me:

"I was learning web development at the time and found myself constantly looking up documentation. It was tedious to navigate to different sites, search within them, and then find my way back to my code. I wanted a single place to quickly find the info I needed across all the tools and frameworks I was using. And I wanted it to work offline, since I often coded on the go without reliable internet. So I started building DevDocs as a personal project to scratch my own itch."

What began as a offline documentation folder on Thibaut‘s laptop evolved over a few months into a web app. In June 2013, Thibaut launched the first public version of DevDocs. Initially, it supported a small handful of documentation sets, including HTML, CSS, JavaScript, and DOM.

Over the following years, Thibaut steadily improved DevDocs and grew its collection of docs. In October 2013, he open-sourced the project on GitHub. This allowed other developers to contribute new docs, submit bug fixes, and help shape the future of the project.

Some key milestones in DevDocs‘s journey:

  • 2013: DevDocs goes public with support for HTML, CSS, JavaScript, and a few other docs
  • 2014: Expanded to include back-end languages like PHP, Python, and Ruby
  • 2015: Introduced offline mode, enabling access without internet connection
  • 2016: Added support for multiple documentation versions
  • 2017: Monthly active users surpassed 100,000
  • 2018: Began exploring ways to make DevDocs more sustainable long-term
  • 2019: Reached 200,000 monthly active users
  • 2020: Thibaut began conversations with freeCodeCamp founder Quincy Larson
  • 2021: Plans finalized to donate DevDocs to freeCodeCamp
  • 2022: DevDocs officially became part of the freeCodeCamp community
  • 2023: DevDocs celebrates its 10th anniversary!

DevDocs Timeline

The Tech Behind DevDocs

From a technical perspective, DevDocs is an impressive piece of software engineering. Let‘s dive into some of the key ingredients that make it so fast and efficient.

At its core, DevDocs is a Ruby web app with a Rails backend. The UI is built with plain JavaScript, CSS, and HTML – no front-end frameworks needed. When a user visits DevDocs in their browser, the core app and UI is delivered as a single initial payload. Subsequent requests for docs and other resources are routed through a speedy CDN.

To provide its famous instant search, DevDocs takes a somewhat unconventional approach. Rather than relying on backend queries, the search index is loaded into browser memory on the client side. This means that searches can be performed rapidly in-browser without additional network requests.

When a user navigates DevDocs while online, the docs they access are cached locally using IndexedDB, a browser technology for storing structured data. This is what powers DevDocs‘s offline functionality – once cached, the docs can be accessed without internet via the same instant search.

Other techniques used to optimize performance include:

  • Effective use of HTTP caching for assets
  • Minimal dependencies and lightweight architecture
  • Code splitting to minimize initial JS/CSS payloads
  • Lazy loading of non-critical resources
  • Extensive use of pre-computation and caching on both client and server

But technical excellence alone doesn‘t explain DevDocs‘s success. Thibaut‘s relentless focus on user experience and attention to detail have been just as important. From the earliest days, his vision has been to create a tool that is a joy to use – fast, intuitive, and accessible to developers everywhere.

The Future of DevDocs

While Thibaut deserves tremendous credit for building and nurturing DevDocs for nearly a decade, maintaining a project of this scale is too much for any one person. For several years, he had been searching for a way to ensure DevDocs could continue to thrive without depending so heavily on his individual time and energy.

In freeCodeCamp, he found the perfect partner to take DevDocs into the future. freeCodeCamp is a donor-supported 501(c)(3) public charity with a mission of making technology education accessible to all. Each month, millions of people use its free online curriculum, tutorials, and videos to learn to code and advance their careers.

By joining forces, DevDocs gains access to freeCodeCamp‘s global contributor community, along with a range of resources to support its growth. freeCodeCamp benefits by being able to offer its learners an even more powerful tool for accessing documentation and continuing their learning journeys.

As Quincy Larson, founder of freeCodeCamp, explained:

"freeCodeCamp and DevDocs are such a natural fit. Both are free, open-source, and designed to empower people to learn and succeed as developers. I‘m excited to work with Thibaut and the DevDocs community to take this incredible resource to the next level."

Going forward, the DevDocs project will maintain its own identity and codebase, while benefiting from closer integration with freeCodeCamp‘s ecosystem of learning resources. Thibaut will continue to lead the project as its core maintainer, with support from a new team of freeCodeCamp contributors around the world.

Some key priorities for the future of DevDocs include:

  • Adding support for more documentation and programming languages
  • Improving accessibility and compatibility, especially on mobile devices
  • Investing in the contributor experience to make it easier for new people to get involved
  • Exploring new ways to intelligently cross-link and connect relevant docs
  • Expanding the DevDocs API and building an extension ecosystem
  • Localizing DevDocs into more languages to expand its global reach

But above all, the guiding star remains the same as it‘s been since day one: building the best possible resource to help developers find the knowledge they need.

As Thibaut shared,

"I‘m really excited about this next chapter for DevDocs. By joining freeCodeCamp, we can tap into an amazing community of passionate people who share our vision. I can‘t wait to see how we‘ll be able to grow and improve DevDocs to reach even more developers in the years to come."

A Few Words from Happy DevDocs Users

Don‘t just take my word for it. Here are a few testimonials from developers around the world about why they love DevDocs:

"DevDocs is my go-to resource when I need to quickly look something up while coding. It‘s so fast and easy to use, and the offline support is a game-changer. I honestly can‘t imagine not having it in my toolkit at this point." – Sarah, front-end developer

"As someone who is relatively new to coding, DevDocs has been an absolute lifesaver. Rather than getting lost down rabbit holes trying to find info, I can almost always get a clear answer within seconds. It‘s really accelerated my learning journey." – Ahmed, aspiring full-stack developer

"I love how DevDocs lets me customize my experience, from the dark mode to the offline settings. But even more than that, I appreciate the obvious care and thoughtfulness that has gone into every aspect of it. It‘s a tool built by developers who deeply understand the needs of other developers." – Lina, software team lead

"The first time I used DevDocs, I remember being blown away by how intuitive it was. It just worked the way I expected, without any clutter or confusion. Since then, it‘s become an indispensable part of my daily workflow. I can‘t thank Thibaut and the community enough for this incredible free resource." – Javier, back-end engineer

Get Involved and Contribute

As DevDocs enters this new stage in its journey, there are more opportunities than ever to contribute. Whether you‘re a seasoned open-source contributor or looking to make your first PR, there are many ways to get involved.

Some key areas where DevDocs needs your help:

  • Development: Adding new docs, fixing bugs, and working on new features. DevDocs is primarily built with Ruby and JavaScript.

  • Design: Improving the UI and user experience, from small tweaks to larger feature enhancements.

  • Documentation: Helping to improve and expand the DevDocs contributing guidelines for new participants.

  • Evangelism: Spreading the word about DevDocs and helping to grow its community of users and supporters.

  • Localization: Translating DevDocs into other languages to make it more accessible to developers globally.

To get started, head over to the DevDocs GitHub repo and check out the open issues. You can also join the DevDocs chat room on Gitter to meet other contributors and get your questions answered.

As Thibaut put it,

"DevDocs is a community effort, and every contribution makes a real difference. Whether it‘s fixing a typo, adding a new doc, or just spreading the word, every bit helps. I‘m excited to welcome new contributors and work together to build an even better DevDocs."

Dive Into DevDocs Today

In a world where new frameworks, languages, and tools are always emerging, having a trusted companion like DevDocs makes the journey a whole lot easier. It‘s a place where you know you can always turn to find the knowledge you need, without distractions or detours.

So if you‘re not already using DevDocs, I encourage you to dive in and give it a try. It‘s available for free at devdocs.io. You can access it on the web, or download it for offline use in Chrome, Firefox, or on your mobile device.

Once you start using DevDocs, I‘m confident it will quickly become an essential part of your daily routine – as it has for me and thousands of other developers around the globe. And if you find yourself wanting to give back, remember that there are many ways to contribute and help shape the future of this incredible community resource.

To Thibaut and the entire DevDocs community, congratulations on this exciting new chapter. I can‘t wait to see what the next ten years will bring. Happy coding, and long live DevDocs!

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *