Summary: This diff introduces the packages necessary for Flipper decapitated. * flipper-common: utilities & types shared between client, server, flipper-plugin * flipper-server-core: all device & client management goes in here. Basically flipper's backend * flipper-ui-core: all UI goes in here, as far as it doesn't depend on Electron * desktop: the Electron app, will load server-core and ui-core, and glue them together, providing implementations for some electron specific stuff like dialgos * flipper-server: A node process hosting flipper-server-core, that can be connected to over websockets. And probably can serve a browser version of the UI as well. * flipper-ui-browser: thin wrapper around flipper-ui-core, providing some browser specific behavior / stubs. * flipper-dump: (might remove later), but want to hack a quick and dirt flipper dump in here, as alternative way to test flipper-server-core. This diff just creates the packages, but doesn't move any code, so it can be summarized as: restoftheowl Reviewed By: nikoant Differential Revision: D30218646 fbshipit-source-id: 735598a1261a98e584f52504b5eba01ec0afa162
flipper-plugin
flipper-plugin is the dependency used by all modern Flipper plugins (project "Tommy").
For background: https://fb.quip.com/YHOGAnaPqAVJ
flipper-plugin is to be used as dev and peer dependency of all Flipper plugins. It provides:
- (TODO) Standard API's to interact with Flipper, such as the client connection.
- (TODO) Standard components to organize the UI
- (TODO) Testing utilities
API's provided by flipper-plugin are documented at fbflipper.com (TODO).
There should normally be no need to install flipper-plugin as dependency.
Rather, plugins should be scaffolded using npx flipper-pkg init (TODO) as documented here