OAuth 2.0 authorization server implementation. Follows specification defined in:
- IETF RFC 6749 The OAuth 2.0 Authorization Framework
- IETF RFC 6750 The OAuth 2.0 Authorization Framework: Bearer Token Usage
- Create the
.env
file:cp .dev.env .env
. - Install npm packages:
npm ci
. npx playwright install --with-deps
to install Playwright browsers for e2e testing.
- Start up the database docker container:
docker-compose up -d
. - Set up the dev database:
npm run dev-db
. - Start the local server:
npm run dev
. - If working on css styles run
npm run styles -- --watch
separately. - Access in browser on
http://127.0.0.1:3000/
.
To run unit and integration tests: npm t
To run end to end tests:
- Optional
npm run dev
to start up the dev server. Playwright will do this automatically if the server is not running, but this is useful if you wish to see server errors in the console. npm run e2e
to run the tests.
- Fastify web framework
- PostgreSQL for database
- ejs for templating
- Tailwind for styles
- Vitest for unit and integration testing
- Playwright for e2e testing
- biome.js for linting and enforcing code style