Implement headless tic-tac-toe CLI
Summary: Add a CLI app to play tic-tac-toe from the terminal. Reviewed By: lblasa Differential Revision: D36548528 fbshipit-source-id: 4cdfb9d8887cb0d4d0100a822f39a4f9fb25aa9b
This commit is contained in:
committed by
Facebook GitHub Bot
parent
0fcfdef465
commit
abbb267482
17
desktop/examples/headless-tic-tac-toe/README.md
Normal file
17
desktop/examples/headless-tic-tac-toe/README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# headless-tic-tac-toe
|
||||
|
||||
**Experimental feature!**
|
||||
|
||||
Flipper can run plugins in a headless mode - expose their API over the wire. This is an example of how it might look like.
|
||||
|
||||
## Quick start
|
||||
|
||||
0. Clone [Flipper repo](https://github.com/facebook/flipper)
|
||||
0. Navigate to `/desktop` folder.
|
||||
0. Run `yarn`
|
||||
0. Run `yarn flipper-server`
|
||||
0. Start you mobile device (or any other device that supports Flipper).
|
||||
0. Open your app that supports "ReactNativeTicTacToe" plugin (for instance, [React Native Example app](https://github.com/facebook/flipper/tree/main/react-native/ReactNativeFlipperExample)).
|
||||
0. In a different terminal window, navigate to `/desktop/examples/headless-demo`
|
||||
0. Run `yarn`
|
||||
0. Run `yarn start`
|
||||
@@ -7,8 +7,18 @@
|
||||
* @format
|
||||
*/
|
||||
|
||||
const {TicTacToeClient} = require('./ticTacToeClient');
|
||||
|
||||
const main = async () => {
|
||||
// TODO: Implement me
|
||||
const ticTacToeClient = new TicTacToeClient();
|
||||
await ticTacToeClient.init();
|
||||
|
||||
const targetClientId = await ticTacToeClient.selectClient();
|
||||
await ticTacToeClient.startTicTacToePlugin(targetClientId);
|
||||
ticTacToeClient.startGame(targetClientId);
|
||||
};
|
||||
|
||||
main().catch(console.error);
|
||||
main().catch((e) => {
|
||||
console.error('main -> error', e);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user