# authentik documentation source
This directory contains the source files for the authentik [technical documentation](https://docs.goauthentik.io/docs?utm_source=github), [integration guides](https://integrations.goauthentik.io?utm_source=github), and [API documentation](https://api.goauthentik.io?utm_source=github).
Contributions are welcome! Please refer to our [contributor guidelines](https://docs.goauthentik.io/developer-docs?utm_source=github) for details about contributing code or docs.
For instructions to set up your local environment for building docs locally, refer to our [Docs development environment](https://docs.goauthentik.io/developer-docs/setup/website-dev-environment?utm_source=github) page.
For instructions for writing the docs and then testing in your local build, plus tips on writing, links to our Style Guide and templates, see the [Writing documentation guide](https://docs.goauthentik.io/developer-docs/docs/writing-documentation?utm_source=github).
To ensure a smooth review process, we encourage you to build the documentation locally to preview and test your documentation contributions. Be sure to test locally before opening a pull request. Let us know if you have any questions or want help with any part of the process.
## Package structure
At the root of the `website` directory is a `package.json` file that defines an [NPM Workspace](https://docs.npmjs.com/cli/v11/using-npm/workspaces). This allows us to have multiple packages in the same repository, and to install their dependencies via a single command: `make docs-install`
```mermaid
---
config:
layout: dagre
---
flowchart TD
Root["NPM Workspace./website"]
Root --> Topics["Topics./docs"] & Integrations["Integration Guides./integrations"] & API
Schema["Schema../schema.yml"] --> API["Generated Documentation./api"]
HoistedDependencies["Hoisted Dependencies