Facebook Engineering
Open Source

At Facebook, we've always been strong advocates of open software. From our earliest days - when the site was built on PHP, MySQL and memcached - we've been privileged to stand on the shoulders of open source giants.

Ever since, we've worked hard to contribute our own work back to the community, and help other companies - both small and large - learn from our experience of building web, mobile, big data, and infrastructure stacks at scale.

Most of our projects are on GitHub, and we also actively contribute elsewhere, such as to the Hadoop projects, LLVM, GNU grep, and Mercurial, amongst many others.


Started about 11 months ago · Updated 17 hours ago

React is a JavaScript library for building user interfaces. Read more...


Started over a year ago · Updated on Saturday
Web · Infra · PHP · HipHop

HipHop VM (HHVM) is an open-source virtual machine designed for executing programs written in PHP. HHVM uses a just-in-time compilation approach to achieve superior performance while maintaining the flexibility that PHP developers are accustomed to. HipHop VM (and before it HPHPc) has realized more than a 5x increase in throughput for Facebook compared with Zend PHP 5.2. Read more...


Started about 6 months ago · Updated on Friday

Presto is an open source distributed SQL query engine for running interactive analytic queries against data sources of all sizes ranging from gigabytes to petabytes. Read more...


Started about 2 months ago · Updated about a month ago

Shimmer is an easy way to add a shimmering effect to any view in your app. It's useful as an unobtrusive loading indicator. Read more...


Started about 2 months ago · Updated on Friday

Key-value observing is a particularly useful technique for communicating between layers in a Model-View-Controller application. KVOController builds on Cocoa's time-tested key-value observing implementation. It offers a simple, modern API, that is also thread safe. Read more...


Started over a year ago · Updated on Friday
Mobile · Infra · Java · Android

Buck is a build system for Android that encourages the creation of small, reusable modules consisting of code and resources. Because Android applications are predominantly written in Java, Buck also functions as a Java build system. Read more...


Started over a year ago · Updated about 3 weeks ago

Facebook's branch of the Oracle MySQL v5.6 database.


Started about 3 months ago · Updated about a month ago

Conceal provides a set of Java APIs to perform cryptography on Android. It was designed to be able to encrypt large files on disk in a fast and memory efficient manner. The major target for this project is typical Android devices which run old Android versions, have low memory and slower processors. Read more...


Started about 5 months ago · Updated on Friday

RocksDB is an embeddable persistent key-value store for fast storage. RocksDB can also be the foundation for a client-server database but our current focus is on embedded workloads. Read more...


Started about 7 months ago · Updated about a week ago

Regenerator is a source transformer enabling ECMAScript 6 generator functions (yield) in JavaScript-of-today (ES5). Read more...

Join the team

Want to work with us?

We're hiring

Connect & Share

Facebook © 2014