A desktop debugging platform for mobile developers.
Clone or download
danielbuechele and facebook-github-bot fixing calles to undefined
* using `includes` instead of `indexOf` for performance improvements
* fixing bug in Searchable overwriting `defaultFilter` variable
* adding default name for markers without name

Reviewed By: priteshrnandgaonkar

Differential Revision: D13397936

fbshipit-source-id: ee514dab7c2ac4acdaba86ccd41e0ef69815faeb
Latest commit a993b63 Dec 10, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Upgrade to Circle 2.1 (#289) Oct 5, 2018
.vscode Initial commit 🎉 Jun 1, 2018
PortForwardingMacApp Add FBPortForwarding source code Dec 3, 2018
Specs Flipper Release: v0.12.0 Nov 24, 2018
StubPodspecs Adds stub podspec files to reserve the name on cocoapods master repo (#… Nov 19, 2018
android Move version specifier Dec 7, 2018
docs Update getPlugin docs Dec 5, 2018
flow-typed upgrading react-dev-tools Dec 4, 2018
gradle Use Gradle 5.0RC1 with HTTP retry (#317) Nov 3, 2018
iOS Add crash reporter plugin in swift sample app Dec 7, 2018
libs Solve fbjni bug to allow catching Java exception in JNI Nov 19, 2018
scripts Never cache source files in dev mode Nov 5, 2018
src fixing calles to undefined Dec 10, 2018
static Add empty .watchmanconfig Dec 7, 2018
website updating UI documentation Nov 5, 2018
xplat Don't invalidate connection files on Network Errors Dec 6, 2018
.eslintignore Initial commit 🎉 Jun 1, 2018
.eslintrc.js optional chaining Sep 20, 2018
.flowconfig Flow v0.86.0 in xplat/sonar Nov 19, 2018
.gitignore Ignore Podfile.lock (#297) Oct 21, 2018
.sonarhandles Initial commit 🎉 Jun 1, 2018
.travis.yml Re-enable yarn test Oct 9, 2018
.watchmanconfig Add .watchmanconfig to fix yarn start (#265) Sep 17, 2018
.yarnrc Initial commit 🎉 Jun 1, 2018
CNAME Update CNAME Jul 31, 2018
CODE_OF_CONDUCT.md Initial commit 🎉 Jun 1, 2018
CONTRIBUTING.md Update README w/TOC & link Contributing & MIT sections (#222) Aug 13, 2018
Flipper.podspec Move xplat/sonar/xplat/Sonar* to Flipper* Sep 20, 2018
FlipperKit.podspec Rename podspec file Sep 25, 2018
LICENSE Initial commit 🎉 Jun 1, 2018
README.md Modify recommended ios build commands (#296) Oct 22, 2018
build.gradle Move last plugin to plugin dsl Nov 23, 2018
gradle.properties Revert D13302768: [flipper] Upgrade to cmake 3.10.2 Dec 6, 2018
gradlew Initial commit 🎉 Jun 1, 2018
package-lock.json Crashreporter Plugin Nov 26, 2018
package.json Flipper Release: v0.12.0 Nov 24, 2018
settings.gradle Reorganize native dep download and extraction (#154) Jul 16, 2018
yarn.lock Add retries around android device watching Nov 22, 2018


Flipper Build Status

Flipper (formerly Sonar) is a platform for debugging mobile apps on iOS and Android. Visualize, inspect, and control your apps from a simple desktop interface. Use Flipper as is or extend it using the plugin API.


Table of Contents

Mobile development

Flipper aims to be your number one companion for mobile app development on iOS and Android. Therefore, we provide a bunch of useful tools including a log viewer, interactive layout inspector, and network inspector.

Extending Flipper

Flipper is built as a platform. In addition to using the tools already included, you can create your own plugins to visualize and debug data from your mobile apps. Flipper takes care of sending data back and forth, calling functions, and listening for events on the mobile app.

Contributing to Flipper

Both Flipper's desktop app and native mobile SDKs are open-source and MIT licensed. This enables you to see and understand how we are building plugins, and of course join the community and help improve Flipper. We are excited to see what you will build on this platform.

In this repo

This repository includes all parts of Flipper. This includes:

  • Flipper's desktop app built using Electron (/src)
  • native Flipper SDKs for iOS (/iOS)
  • native Flipper SDKs for Android (/android)
  • Plugins:
    • Logs (/src/device-plugins/logs)
    • Layout inspector (/src/plugins/layout)
    • Network inspector (/src/plugins/network)
    • Shared Preferences/NSUserDefaults inspector (/src/plugins/shared_preferences)
  • website and documentation (/website / /docs)

Getting started

Please refer to our Getting Started guide to set up Flipper.


  • macOS (while Flipper is buildable using other systems as well, only macOS is officially supported)
  • node >= 8
  • yarn >= 1.5
  • iOS developer tools (for developing iOS plugins)
  • Android SDK and adb

Building from Source


Running from source

git clone https://github.com/facebook/flipper.git
cd flipper
yarn start

NOTE: If you're on Windows, you need to use Yarn 1.5.1 until this issue is resolved.

Building standalone application

yarn build --mac --version $buildNumber

iOS SDK + Sample App

cd iOS/Sample
rm -f Podfile.lock
pod install --repo-update
open Sample.xcworkspace
<Run app from xcode>

You can omit --repo-update to speed up the installation, but watch out as you may be building against outdated dependencies.

Android SDK + Sample app

Start up an android emulator and run the following in the project root:

./gradlew :sample:installDebug


Find the full documentation for this project at fbflipper.com.

Our documentation is built with Docusaurus. You can build it locally by running this:

cd website
yarn start


See the CONTRIBUTING file for how to help out.


Flipper is MIT licensed, as found in the LICENSE file.