When the backend is started a default user is created with the credentials specified in the database-configuration.json file
Start with creating an app identifier in the Expo Push Notification Server UI. An app identifier is needed for subscriber to register and for the user to specify for which subscriber the push notifications should be sent out.
A client (using the Expo SDK) can register as subscriber.
To register a subscriber send a request to the subcriber/create endpoint with the following payload:
{
token: "expo-push-notification-token",
appIdentifierId: "your-app-identifier"
}The expo push notification token received via:
Notifications.getExpoPushTokenAsync({ experienceId: experienceId })).data;
The app identifier created via the Expo Push Notification Server UI
See Expo App Notification Example for a full example. After successful registration of a subscriber you should see the subscriber in the list on the Expo Push Notification Server UI.
Push notifications can be sent to selected or all subscribers. Therefore, you need to log in to the Expo Push Notification Server UI.
NodeJS Typescript server based on expressJS
- Existing RethinkDB
npm install
npm run start
Angular Frontend
npm install
ng serve
You can use the DockerFile to create a Docker image for the Expo Push Notification Server which includes both the server and the UI.
- Run
npm run buildin theclientdirectory. This command will build the frontend and copy the generated build into thepublicfolder. - Run
npm run docker-buildfrom the root directory to build the docker image - Run
npm run docker-run-serverfrom the root directory to start the container
See TODO.md for more information
Feel free to contribute, either via opening an Issue on GitHub or actively join the development. This project is by far not finished and there are a lot of things to do.
Please follow the conventional commits specification
See LICENSE.md for more information
App Icon from Smashicons

