A desktop debugging platform for mobile developers.
Clone or download
jknoxville and facebook-github-bot Modify client id string and device serialisation
Summary:
This improves bug reports.
Adding serial into device.toJson() means you can now easily see which clients (apps) are from which device because they both contain the serial.
Changing client id to use # instead of - because the subcomponents of it already use -.

Reviewed By: passy

Differential Revision: D13058430

fbshipit-source-id: 02697ec623829423e667fd2acbd1abc369a6919b
Latest commit a48c680 Nov 14, 2018
Permalink
Failed to load latest commit information.
.circleci Upgrade to Circle 2.1 (#289) Oct 5, 2018
.vscode Initial commit πŸŽ‰ Jun 1, 2018
Specs Flipper Release: v0.11.1 Nov 3, 2018
android Add litho accessibility rendering to Flipper accessibility mode Nov 10, 2018
docs Fixed missing code block container Nov 7, 2018
flow-typed Bump flow version Oct 31, 2018
gradle Use Gradle 5.0RC1 with HTTP retry (#317) Nov 3, 2018
iOS Prevent overlay class from being target-selected Nov 13, 2018
libs Rename sonarfb to flipperfb Sep 26, 2018
scripts Never cache source files in dev mode Nov 5, 2018
src Modify client id string and device serialisation Nov 14, 2018
static Fix emulator launching bug Nov 13, 2018
website updating UI documentation Nov 5, 2018
xplat Flipper Release: v0.11.1 Nov 3, 2018
.eslintignore Initial commit πŸŽ‰ Jun 1, 2018
.eslintrc.js optional chaining Sep 20, 2018
.flowconfig Bump flow version Oct 31, 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 Add basic integration test Nov 2, 2018
gradle.properties Build against Litho snapshots Nov 6, 2018
gradlew Initial commit πŸŽ‰ Jun 1, 2018
package.json Upgrade node-fs-extra Nov 14, 2018
settings.gradle Reorganize native dep download and extraction (#154) Jul 16, 2018
yarn.lock Upgrade node-fs-extra Nov 14, 2018

README.md

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.

Flipper

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.

Requirements

  • 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

Desktop

Running from source

git clone https://github.com/facebook/flipper.git
cd flipper
yarn
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

Documentation

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
yarn start

Contributing

See the CONTRIBUTING file for how to help out.

License

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