2021-06-21 19:25:56 +00:00
---
title: Frontend-only development environment
---
If you want to only make changes on the UI, you don't need a backend running from source. You can user the docker-compose install with a few customizations.
2021-08-14 20:09:45 +00:00
### Prerequisites
- Node (any recent version should work, we use 16.x to build)
- Make (again, any recent version should work)
- Docker and docker-compose
### Instructions
2021-06-21 19:25:56 +00:00
1. Clone the git repo from https://github.com/goauthentik/authentik
2021-07-13 10:02:14 +00:00
2. In the cloned repository, follow the docker-compose installation instructions [here ](/docs/installation/docker-compose )
2021-06-21 19:25:56 +00:00
3. Add the following entry to your `.env` file:
```
2021-06-21 20:57:18 +00:00
AUTHENTIK_IMAGE=beryju.org/authentik/server
AUTHENTIK_TAG=gh-next
AUTHENTIK_OUTPOSTS__DOCKER_IMAGE_BASE=beryju.org/authentik/outpost-%(type)s:gh-next
2021-08-15 16:13:25 +00:00
AUTHENTIK_LOG_LEVEL=debug
AUTHENTIK_WEB_LOAD_LOCAL_FILES=true
2021-06-21 19:25:56 +00:00
```
2021-06-22 10:06:55 +00:00
This will cause authentik to use the beta images.
2021-06-21 19:25:56 +00:00
2021-08-15 16:13:25 +00:00
4. Add this volume mapping to your compose file
2021-06-21 19:25:56 +00:00
```yaml
version: '3.2'
services:
2021-06-21 20:57:18 +00:00
# [...]
server:
2021-06-21 19:25:56 +00:00
# [...]
2021-06-21 20:57:18 +00:00
volumes:
- ./web:/web
2021-06-22 10:06:55 +00:00
- ./local.env.yml:/local.env.yml
2021-06-21 19:25:56 +00:00
```
2021-06-22 10:06:55 +00:00
This makes the local web files and the config file available to the authentik server.
2021-06-21 19:25:56 +00:00
2021-08-15 16:13:25 +00:00
5. Run `docker-compose up -d` to apply those changes to your containers.
6. Run `make gen-web` in the project root directory to generate the API Client used by the web interfaces
7. `cd web`
8. Run `npm i` and then `npm run watch` to start the build process.
2021-06-21 19:25:56 +00:00
You can now access authentik on http://localhost:9000 (or https://localhost:9443).
You might also want to complete the initial setup under `/if/flow/initial-setup/` .