On this page
Overview
Folly is a collection of C++20 components developed and used at Meta. It complements std and Boost by adding utilities that are unavailable there or do not meet the required performance profile, and it is a shared dependency for several Meta open-source C++ projects.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Complement the C++ standard library and Boost with core utilities
Folly adds components when equivalent functionality is missing from the standard library or Boost, or does not satisfy the required performance characteristics.
Sources: [1]
Use implementations designed around performance at large scale
The README identifies large-scale performance as a common theme across low-level components such as synchronization, containers, memory, async, and networking utilities.
Sources: [1]
Build with CMake while fetching missing dependencies
The current CMake workflow can fetch dependencies not found on the host, enabling a release checkout to be configured and built with standard CMake commands. getdeps.py is available for CI and sibling-project workflows.
Sources: [1]
Best fit
Fits high-performance C++ services and system components needing shared utilities
It is useful when performance-sensitive C++ systems need data structures, concurrency, networking, or low-level utilities beyond the standard library.
Sources: [1]
Before adoption
Do not assume ABI compatibility between commits
The README explicitly provides no ABI compatibility guarantee from commit to commit and generally recommends static builds. Pin the Folly release/tag together with its dependency graph.
Sources: [1]
Do not treat folly/experimental as stable client API
The experimental subtree may be used internally but is not considered stable enough for client code, and updates may break consumers.
Sources: [1]
Review bundled third-party licenses separately
The project root is Apache-2.0, while the LICENSE file also records separate terms for bundled sources such as folly/external/farmhash. Preserve the relevant notices when redistributing.
Sources: [3]
Official sources
- [1]Folly v2026.09.28.00 README(2026-10-04)
- [2]Folly v2026.09.28.00 release(2026-10-04)
- [3]Folly Apache-2.0 and bundled notices(2026-10-04)
Supplemental curator note
Folly does not guarantee ABI compatibility from commit to commit, and its README generally recommends static builds. Pin a release/tag and reproduce its dependency graph together. Code under folly/experimental is not considered stable for client use.
Try it in 3 steps
- 1
Fetch the Folly release source
Pin the source checkout to the dated release tag.
git clone --depth 1 --branch v2026.09.28.00 https://github.com/facebook/folly.git folly-2026.09.28 - 2
Configure CMake without tests or benchmarks
CMake may fetch dependencies that are not available on the host. Keep the validation in a local build directory instead of installing system-wide.
cmake -S folly-2026.09.28 -B folly-2026.09.28/_build -DBUILD_TESTS=OFF -DBUILD_BENCHMARKS=OFF - 3
Build the Folly library target
Validate that the pinned source builds without a system install. Since Folly does not guarantee ABI compatibility, pin consumers to the same release.
cmake --build folly-2026.09.28/_build --target folly -j2
Growth
Growth trends · Last 30 days
30,551 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 394
- Open PRs
- 151
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
- Stars
- 30,551
- Forks
- 5,875
- Watchers
- 996
- Open issues
- 330
- Contributors
- 277
- Owner type
- Organization
- Primary language
- C++
- License
- Apache-2.0
- Repository last updated
- Oct 3, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- CoMaps569 Stars
2 shared tag(s) · Same language
Save maps for offline place search and walking, cycling, and driving navigation
C++ - Swift70,457 Stars
2 shared tag(s)
a cross-platform language combining memory safety, native performance, and C/Objective-C interoperability
Swift - .NET Runtime18,307 Stars
2 shared tag(s)
run managed .NET code across cloud, mobile, desktop, and IoT with CoreCLR, Mono, base libraries, and the shared host
C# - OpenShot6,587 Stars
2 shared tag(s)
combine timeline editing, recording, color tools, and local AI in a cross-platform editor
Python - llama.cpp130,231 Stars
1 shared tag(s) · 1 shared category(s) · Same language
run GGUF models on a chosen mix of local CPUs and GPUs
C++ - React Native126,786 Stars
2 shared tag(s) · 1 shared category(s) · Same language
native mobile UI with React, stable 0.87.1, and a framework-first path
C++
Report incorrect information
Tell us if any listing information is incorrect or outdated.