You can run the entire stack using docker-compose:
docker-compose upTo explore the GraphQL APIs you can use graphiql, which is enabled by default and served at http://localhost:3001/api/graphiql.
It's not secured by default and run with AUTH_TYPE=plain, so you can specify the authorization header in Request Headers section (like authorization-key: beast~mailinator.com@marvel-x-men).
If you're using HMAC-based authentication (recommended), you need to specify api-public-key, x-user-id and x-user-hmac headers. Read more about it here.
To start Notifir API locally you need to have database running. You can run the Postgres in a docker container using the following commands:
docker pull postgres
docker run --name notifir-db -e POSTGRES_USER=notifir -e POSTGRES_PASSWORD=notifir -p 5432:5432 -d notifir
Postgres is required to have uuid-ossp extension installed. Since the superuser permission is required to do that, you need to install it before running the migration and seed scripts.
psql -v ON_ERROR_STOP=1 -h localhost -p 5432 --username postgres --dbname notifir -c "create extension if not exists \"uuid-ossp\"";Once you have the DB ready, you can set up the data structure and generate seed data:
npx knex migrate:latest
npx knex seed:run
Try to connect to the Postgres and check what is the data you have there. If you're VS Code user you can try out the following plugins:
You should have notifications table in the public schema.
Now you should be fine to run the application:
yarn
yarn watch
Make changes in the code and see them live.
Enjoy 🙃