# sso-core

This is a SvelteKit-powered authentication service.

## Requirements

1. A MySQL or MariaDB database.
2. Node.js 20+ or Docker.

## Set up

1. Clone the repository.
2. Install dependenices - `npm install`.
3. Configure the environment - `cp .env.example .env`.
4. Generate secrets:
   1. Session secret - `node -e 'console.log(require("crypto").randomBytes(16).toString("hex"))'`.
   2. Challenge secret - `node -e 'console.log(require("crypto").randomBytes(32).toString("hex"))'`.
5. Build the application - `npm run build`.
6. Run the application - `node -r dotenv/config build`.