authsrv/README.md

30 lines
1.1 KiB
Markdown
Raw Normal View History

2023-07-22 17:54:32 +02:00
# authsrv
A **prototype** authentication/identity server for Longmont.
## Configuration
For now, check out `src/config.ts`, the names should be mostly self explanatory.
Consider all environment variables required.
## Development commands
- Building the server: `pnpm build`
- Migrating the database: `pnpm migrate`
- Watching for changes and reloading the server automatically: `pnpm dev`
- Formatting: `pnpm format`
- Linting (if you don't have an ESLint plugin): `pnpm format`
## Creating migrations
Creating migrations is a little awkward because TypeORM expects `ts-node`, which uses `tsc`.
To create a migration, first run `pnpm build`,
then run `pnpm typeorm migration:generate -p -d ./dist/db/index.js ./src/db/migrations/<name>`,
replacing `<name>` with the name of the migration you're creating.
Then rename the created file to end in `.js` and remove the TypeScript-specific code from it.
(Yes, this is incredibly janky, but it works, and it only needs to be done once per migration, actually migrating works flawlessly)
## License
`authsrv` is dual-licensed under the Apache License, 2.0 and the MIT license.