Docusaurus 2019 Recap
Yangshun Tay
Front End Engineer at Facebook2019 was a great year for Docusaurus - we've made tremendous progress on Docusaurus 2. Current Docusaurus 1 users who aren't using the translations feature can feel free to check it out and migrate to it! Otherwise we will work with you to make that happen in 2020 :)
#
Docusaurus 2 (D2)In 2018, we proposed to rebuild Docusaurus from the ground up. It involved a major rearchitecture effort - we created a content-centric CSS framework from scratch, a plugins system, and moved from static HTML pages to be a single page-app with prerendered routes. It was a wild adventure and a tough feat, especially with no dedicated FTE working on the project. With the help of @endilie, our ex-intern-turned-contributor-turned-maintainer, we made really good progress on D2 and are currently on version 2.0.0-alpha.40. All features in Docusaurus 1 except for translations have been ported over.
D2's killer features are Dark Mode and its superb performance. D2 has dark mode support out-of-the-box and it is near effortless to create a dark mode-friendly documentation site. Endilie put in great effort into optimizing the performance of the site and a bunch of performance optimization tricks have been done under the hood by default - optimized images, prerendering every route to static HTML and client-side routing thereafter, prefetching assets needed by future navigations whenever the user hovers over a navigation link, etc.
Last but not least, we implemented a plugins architecture and turned the repo into a Lerna monorepo. We believe this plugin architecture will be helpful towards building a community and also allowing users to build their own features for their unique use cases.
#
GitHub Activity- Stars: 10050 -> 14632 (+45.6% y/y)
- Total Contributors: 182 -> 303 (+66.4% y/y). Most of which are non-Facebook contributors
- Daily npm Downloads: 728 -> 2320 (+218.7% y/y). The peak was in November
- D1 is currently used by 3872 projects on GitHub while D2 is used by 247 projects on GitHub
- We now have 4 active core contributors! (+100% y/y)
#
Notable UsersA good portion of the projects within the Open Source community use Docusaurus. This half we also onboarded more notable projects onto Docusaurus 2:
And welcomed more projects to Docusaurus 1:
#
MediaYangshun gave a classroom session during F8 about Using Docusaurus to Create Open Source Websites.
#
CommunityA few third-party hosting/development services also has first-class integration with a Docusaurus setup:
#
Looking AheadD2 has gained some traction among the developer community. In 2020, we want to achieve full feature parity with D1 by the first half and help the remaining Facebook projects on D1 move to D2. It would also be great if we could use Docusaurus for internal documentation, but that is a non-trivial undertaking. If you have a need for it or have some ideas, come speak with us!
Huge thanks to the community for their contributions, especially the core team - Endilie Yacop Sucipto, Alexey Pyltsyn, Wei Gao. Lastly, thank you Joel Marcey for starting Docusaurus and supporting the project all this time.
Cheers to a great 2020! ๐