# GitHub App > The Flax GitHub App integration for dbt project ingest and semantic write-back — installation and permissions *[View this page in the Flax docs](https://flax-analytics.com/docs/developers/github-app)* Flax integrates with GitHub through a **GitHub App** to read your dbt project and to write model changes back as pull requests. This page is for admins connecting a repository. ## What it powers - **dbt ingest** — Flax reads your [dbt project](/docs/connections/dbt-projects) from the connected repository to build the semantic layer. - **Semantic [write-back](/docs/modeling/write-back)** — edits made in Flax are committed to a branch and opened as a pull request in the same repository, so changes flow through your normal review process. ## Installation 1. Install the Flax GitHub App on your GitHub organization or account. 2. Grant it access to the repository (or repositories) holding your dbt project. 3. Connect that repository in Flax when you configure the dbt project. ## Permissions The App requests repository **contents** access — read for ingest, and write so it can create branches and commits for write-back — plus **pull request** access to open PRs. Grant it only the repositories you intend Flax to read and write. > [!IMPORTANT] > Installing and scoping the GitHub App is an admin action. Limit its repository access to the dbt projects Flax needs. ## Related - [dbt projects](/docs/connections/dbt-projects) - [Semantic write-back](/docs/modeling/write-back) - [Webhooks](/docs/developers/webhooks)