https://github.com/simalexan/api-websockets-push-notifications-dynamodb
https://github.com/simalexan/api-websockets-push-notifications-dynamodb
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/simalexan/api-websockets-push-notifications-dynamodb
- Owner: simalexan
- Created: 2019-01-02T15:46:59.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-03T17:59:53.000Z (over 6 years ago)
- Last Synced: 2025-03-18T14:48:50.258Z (3 months ago)
- Language: JavaScript
- Size: 17.6 KB
- Stars: 13
- Watchers: 3
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Api Gateway (Websockets) Push Notifications -> Lambda -> DynamoDB
## How to set this component up
1. Create a WebSocket Api described in [Announcing WebSocket APIs in Amazon API Gateway](https://aws.amazon.com/blogs/compute/announcing-websocket-apis-in-amazon-api-gateway)
2. Deploy this component and provide the Domain Name and the Stage of your newly created Websocket API.## Description
This is a serverless component consisting of:
- an API Gateway with Websockets, that handles connections with clients
- On Connect Lambda function, that's invoked when a client connects and stores that to
- a `notifications-clients` DynamoDB table, where all of our client connections are stored
- On Disconnect Lambda function, that's invoked when a client disconnects and delets that connection from the Connections DynamoDB table
- Push Notifications Lambda function, that's pushing a notification to all of the clients invoked when an Notification Event is stored into
- a `notifications-events` DynamoDB table, in which you can store events that are happening throughout your application and they will be pushed as notifications towards the application users_Aside from this main functionality, its important features are:_
- Supports CORS
- Written in Node.js
- Easily composable into your other app components by storing events into to its `notifications-events` DynamoDB table## Latest Release - 1.0.0
Initial release.
## Roadmap - Upcoming changes
Here are the upcoming changes that I'll add to this serverless component:
- ESLint
- Tests