* root: initial rename * web: rename custom element prefix * root: rename external functions with pb_ prefix * root: fix formatting * root: replace domain with goauthentik.io * proxy: update path * root: rename remaining prefixes * flows: rename file extension * root: pbadmin -> akadmin * docs: fix image filenames * lifecycle: ignore migration files * ci: copy default config from current source before loading last tagged * *: new sentry dsn * tests: fix missing python3.9-dev package * root: add additional migrations for service accounts created by outposts * core: mark system-created service accounts with attribute * policies/expression: fix pb_ replacement not working * web: fix last linting errors, add lit-analyse * policies/expressions: fix lint errors * web: fix sidebar display on screens where not all items fit * proxy: attempt to fix proxy pipeline * proxy: use go env GOPATH to get gopath * lib: fix user_default naming inconsistency * docs: add upgrade docs * docs: update screenshots to use authentik * admin: fix create button on empty-state of outpost * web: fix modal submit not refreshing SiteShell and Table * web: fix height of app-card and height of generic icon * web: fix rendering of subtext * admin: fix version check error not being caught * web: fix worker count not being shown * docs: update screenshots * root: new icon * web: fix lint error * admin: fix linting error * root: migrate coverage config to pyproject
1.2 KiB
title |
---|
Setting up a local dev environment |
Backend
To create a local development setup for authentik, you need the following:
- Python 3.9
- pipenv, which is used to manage dependencies, and can be installed with
pip install pipenv
- PostgreSQL (any recent version will do)
- Redis (any recent version will do)
For PostgreSQL and Redis, you can use the docker-compose file in scripts/
. You can also use a native install, if you prefer.
To configure authentik to use the local databases, create a file in the authentik directory called local.env.yml
, with the following contents
debug: true
postgresql:
user: postgres
log_level: debug
Afterwards, you can start authentik by running ./manage.py runserver
. Generally speaking, authentik is a Django application.
Most functions and classes have type-hints and docstrings, so it is recommended to install a Python Type-checking Extension in your IDE to navigate around the code.
Frontend
By default, no transpiled bundle of the frontend is included. To build the UI, you need Node 12 or newer.
To build the UI, run these commands:
cd web/
npm i
npm run build
If you want to make changes to the UI, run npm run watch
instead.