0.0.1 • Published 5 years ago
@schmidtdisturbr/tic-tac-toe-api v0.0.1
tic-tac-toe-api
Well hello!
This is a personal project I've been working on, just exploring what's possible with serverless (just happen to be using Serverless Framework) and heavily asynchronous approaches.
Eventually I'll split this module into two; one that's specific to Tic Tac Toe functionality, and then one for the "framework" portions (assuming there's any significant value in said framework).
Running
As a personal project, I've not put much effort into making this deployable by others (yet), but it goes something like this:
- Set yourself up with an AWS account and the command line tools
- Install Servless
- (somehow solve resource naming conflicts in serverless.yml)
Run
$ serverless deploy
. You should see a bunch of output that looks something like this:Serverless: Stack update finished... Service Information service: tic-tac-toe-api stage: dev region: us-west-2 stack: tic-tac-toe-api-dev resources: 41 api keys: None endpoints: GET - https://u6d07hxpr6.execute-api.us-west-2.amazonaws.com/dev/sample wss://38t51ncco1.execute-api.us-west-2.amazonaws.com/dev functions: Sample: tic-tac-toe-api-dev-Sample Sessions: tic-tac-toe-api-dev-Sessions CommandReceiver: tic-tac-toe-api-dev-CommandReceiver CommandProcessor: tic-tac-toe-api-dev-CommandProcessor EventDispatch: tic-tac-toe-api-dev-EventDispatch layers: None
Note the websockets URL under "endpoints" and run
wscat -c [wss endpoint]
- You can then start a new game:
If everything's working as expected, you should get a> {"commands":[{"start_game": {}}]}
game_started
event returned to you. Make note of the game id. - You can make a move with:
> {"commands":[{"make_move": {"game_id": "[game id from game_started]", "square": "a1", "mark": "X", "move_number": 1}}]}
0.0.1
5 years ago