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.

react

Started about 11 months ago · Updated 4 hours ago

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

hhvm

Started over a year ago · Updated on Monday
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...

presto

Started about 6 months ago · Updated about an hour ago

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...

shimmer

Started about 2 months ago · Updated on Tuesday

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...

kvocontroller

Started about 2 months ago · Updated last 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...

buck

Started over a year ago · Updated on Tuesday
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...

mysql-5.6

Started over a year ago · Updated about a month ago

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

conceal

Started about 3 months ago · Updated on Monday

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...

rocksdb

Started about 5 months ago · Updated 35 minutes ago

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...

regenerator

Started about 7 months ago · Updated on Tuesday

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