diff --git a/.gitignore b/.gitignore
index d2363495..85bb2101 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,6 +19,8 @@ npm-debug.log*
yarn-debug.log*
yarn-error.log*
+/tmp
+
# Generated by the build process
/sidebar.reference.json
diff --git a/docs/contribution/20-glossary.mdx b/docs/contribution/10-glossary.mdx
similarity index 98%
rename from docs/contribution/20-glossary.mdx
rename to docs/contribution/10-glossary.mdx
index 1cf12332..a706d0d2 100644
--- a/docs/contribution/20-glossary.mdx
+++ b/docs/contribution/10-glossary.mdx
@@ -1,5 +1,6 @@
---
title: Glossary
+sidebar_position: 2
---
## Contributor
diff --git a/docs/contribution/20-getting-started/02-become-contributor.mdx b/docs/contribution/20-getting-started/02-become-contributor.mdx
new file mode 100644
index 00000000..8d02c43e
--- /dev/null
+++ b/docs/contribution/20-getting-started/02-become-contributor.mdx
@@ -0,0 +1,36 @@
+---
+title: Contributor werden
+---
+
+Contributor werden ist sehr einfach.
+Du brauchst lediglich eine Organisation, die du über das mStudio anlegen kannst.
+Organisationen repräsentieren Unternehmungen, über die etwas abgerechnet werden kann.
+Bei unseren Hosting-Produkten sind dies bspw. Rechnungen.
+Im Falle von Contributoren werden die Gutschriften für die gebuchten Extensions über die Organisation gutgeschrieben.
+
+:::info Separate Organisation
+Wenn du bereits konventioneller Kunde bei uns im mStudio bist,
+könnte es von Vorteil sein, eine separate Organisation für die Contribution zu erstellen,
+um die beiden Geschäftsbereiche zu trennen und Berechtigungen einfacher abzugrenzen.
+Dies ist jedoch keine Pflicht.
+:::
+
+Um Contributor zu werden, muss in deiner Organisation zunächst ein Vertragspartner hinterlegt werden
+
+
+
+
+
+Nun kann einfach auf den Button **"Contributor werden"** geklickt werden.
+Dadurch wird deine Organisation zu einem unverifizierten Contributor.
+Falls du deine Extension veröffentlichen willst, folge diesem Guide bis zur [Veröffentlichung der Extension](../publish)
+
+
+
+:::info
+Um Extensions nicht nur für dich, sondern für die Allgemeinheit bereitstellen zu können,
+musst du als Contributor verifiziert werden.
+
+Eine genaue Übersicht darüber, welche Informationen für die Verifizierung eines Contributors benötigt werden,
+haben wir in unserer [Contributor Übersicht](../../overview/contributor) beschrieben.
+:::
diff --git a/docs/contribution/20-getting-started/03-configure-extension.mdx b/docs/contribution/20-getting-started/03-configure-extension.mdx
new file mode 100644
index 00000000..dc6045b6
--- /dev/null
+++ b/docs/contribution/20-getting-started/03-configure-extension.mdx
@@ -0,0 +1,90 @@
+---
+title: Konfiguration der Extension
+---
+
+## Extension registrieren
+
+Sobald man Contributor ist, kann eine Extension im mStudio angelegt werden.
+Dazu muss innerhalb der Organisation der **"Entwicklung" Tab** aufgerufen werden und über den **"Anlegen" Button** eine neue Extension registriert werden.
+Zu diesem Zeitpunkt muss lediglich ein **Name** eingegeben werden, der auch im **Nachhinein noch ändern** kann.
+
+Extension Namen müssen **eindeutig** sein.
+Da es sich empfiehlt, für die **Entwicklung vorerst eine eigene** und später für produktive Zwecke eine weitere Extension anzulegen,
+ist es sinnvoll, dies im Namen zu vermerken, indem bspw. "(DEV)" an den Namen angehangen wird.
+
+:::info Lebenszyklus von Extensions
+Extensions sind erst im Marktplatz **sichtbar**, wenn sie **veröffentlicht** wurden.
+Deswegen können problemlos für eigene Entwicklungsprozesse Entwicklungs- bzw. Staging-Extensions angelegt werden.
+Weitere Informationen zum Lebenszyklus von Extensions sind im [Extension Konzept](../../overview/extensions#lifecycle-of-an-extension) erklärt.
+:::
+
+
+
+## Setzen des Extension Context
+
+Für jede Extension muss festgelegt werden, in **welchem Kontext** sie **installierbar** sein soll.
+Zur Auswahl stehen **Organisation** und **Projekt**.
+Die Reference Extension ist als Projekt-Extension gebaut.
+
+Im **Tab "Berechtigungen"** muss also in der Sektion **Extension Context** auf **Bearbeiten** geklickt werden.
+Nun wird **Projekt** gewählt und gespeichert.
+
+:::info Wahl des Extension Context
+Die Reference Extension ist als Projekt-Extension gebaut.
+Es ergibt jedoch nicht für jede Extension-Idee sinn, sie als Projekt-Extension zu implementieren.
+
+Welche Auswirkungen die Wahl hat und welche Faktoren für die Wahl entscheidend sind, haben wir im ["Wie wähle ich den richtigen Extension Context?"-Guide](../../how-to/choose-a-context) beschrieben.
+:::
+
+
+
+## Berechtigungen konfigurieren
+
+Die Reference Extension ruft Informationen über den User und das Projekt, in dem sie installiert ist, ab.
+Außerdem bietet sie die Möglichkeit, den Namen des Projekts anzupassen.
+Um dazu in der Lage zu sein, müssen für die Extension Berechtigungen in Form von Scopes konfiguriert werden.
+Das muss immer gemacht werden, wenn Extensions auf die mStudio API zugreifen wollen.
+
+Genauso wie der Extension Context werden auch die Berechtigungen im **Tab "Berechtigungen"** konfiguriert.
+Dazu muss in der entsprechende Sektion auf "Bearbeiten" geklickt werden.
+Wir stellen nun **Projekt lesen** und **schreiben** sowie **Benutzer lesen** ein.
+
+:::info Verfügbare Scopes
+Im [Guide zu Scopes](../../overview/concepts/scopes) haben wir ausführlicher beschrieben, welche Scopes verfügbar sind und wie der richtige Scope identifiziert werden kann.
+Wenn du Schwierigkeiten damit hast, den richtigen Scope zu finden oder dein Scope fehlt, komm gerne auf uns zu.
+Wir unterstützen dich gerne dabei.
+:::
+
+
+
+## Konfigurieren der Frontend-URL
+
+Die Reference Extension verwendet ein **Frontend Fragment**.
+Das bedeutet, sie implementiert ein Frontend, dass nahtlos in das mStudio integriert werden soll.
+
+:::info Frontend Fragment vs. External Frontend
+Frontend Fragmente sind nicht die einzige Möglichkeit, ein Frontend für eine Extension anzubieten.
+Wenn die Anforderungen an Frontend Fragmenten für dich zu restriktiv sind oder nicht zu deinem Anwendungsfall geeignet sind,
+gibt es auch die Möglichkeit, ein externes Frontend zu implementieren.
+
+Die Eigenschaften und Unterschiede zwischen Frontend Fragmenten und externen Frontends sind im [Konzept zur Frontend Entwicklung](../../overview/concepts/frontend-development) erklärt
+:::
+
+Um die URL für das Frontend Fragment der Reference Extension einzustellen, muss im **Tab "Frontend"** der Extension in der Sektion zu **Frontend Fragments** auf **Hinzufügen** geclickt werden.
+
+
+
+Für ein Frontend Fragment muss ein **Ankerpunkt** gewählt werden.
+Dieser bestimmt, an welcher Stelle das Frontend deiner Extension eingebunden werden soll.
+Die Reference Extension ist gebaut, um an dem Ankerpunkt `/projects/project/menu/section/extensions/item` eingehangen zu werden,
+also als Menüpunkt innerhalb eines Projekts.
+
+Für den Ankerpunkt muss außerdem ein **Anzeigename** definiert werden.
+Dieser bestimmt bspw. bei Ankerpunkten, die als Menüpunkte fungieren, wie der Menüpunkt heißt.
+Für Sektionen bestimmt der Anzeigename die Überschrift der Sektion.
+
+Schließlich muss eine **URL** angegeben werden.
+Für die in Entwicklung befindliche Extension kann hier auch eine auf dem **lokalen Client erreichbare Adresse** eingegeben werden.
+Da die Reference Extension Standardmäßig auf Port 3000 läuft, fügen wir hier `http://localhost:3000` ein.
+
+
diff --git a/docs/contribution/20-getting-started/04-reference-extension.mdx b/docs/contribution/20-getting-started/04-reference-extension.mdx
new file mode 100644
index 00000000..3ebb7d4b
--- /dev/null
+++ b/docs/contribution/20-getting-started/04-reference-extension.mdx
@@ -0,0 +1,198 @@
+---
+title: Reference Extension
+---
+
+## Die Reference Extension
+
+Die [Reference Extension](https://github.com/mittwald/reference-extension) ist eine umfassende Beispiel-Extension,
+die alle wichtigen Features für die Entwicklung von Extensions, die sich direkt in das mStudio integrieren, demonstriert.
+Sie dient als praktische Vorlage und Lernressource für Entwickler.
+
+### Idee und Motivation
+
+Die Reference Extension wurde entwickelt, um:
+
+- **Best Practices** für Extension-Entwicklung zu zeigen
+- Alle wichtigen **Marketplace-Konzepte** praktisch zu demonstrieren
+- Die Integration mit der mittwald API und dem mStudio zu illustrieren
+- Als **Ausgangspunkt** für eigene Extension-Projekte zu dienen
+
+Die Extension ist vollständig dokumentiert und kann als Template verwendet werden, um eigene Extensions zu entwickeln.
+Der Code ist so strukturiert, dass er leicht verstanden, angepasst und erweitert werden kann.
+
+### Technologischer Stack
+
+Die Reference Extension verwendet moderne Web-Technologien, die auch für die Entwicklung eigener Extensions empfohlen werden:
+
+**Frontend:**
+
+- **[React 19](https://react.dev/)** - Für die Entwicklung der Benutzeroberfläche
+- **[TanStack Router & Query](https://tanstack.com/)** - Routing und State Management
+- **[@mittwald/flow-remote-react-components](https://mittwald.github.io/flow/)** - UI-Framework, das mit Frontend Fragmenten kompatibel ist
+- **[React Ghostmaker](https://github.com/mittwald/react-ghostmaker)** - Server Function Abstraktion
+
+**Backend:**
+
+- **[TanStack Start](https://tanstack.com/start/latest)** - Full-stack React Framework
+- **[Drizzle ORM](https://orm.drizzle.team/)** - Typsichere Datenbankoperationen mit PostgreSQL
+- **[@mittwald/api-client](https://www.npmjs.com/package/@mittwald/api-client)** - Client für die mittwald API
+- **[@weissaufschwarz/mitthooks](https://www.npmjs.com/package/@weissaufschwarz/mitthooks)** - Webhook-Verarbeitung
+
+**Development Tools:**
+
+- **[Vite](https://vite.dev/)** - Schnelles Build-Tool
+- **[Biome](https://orm.drizzle.team/)** - Linting & Formatting
+- **[Vitest](https://vitest.dev/)** - Unit Testing Framework
+
+### Implementierte Konzepte des mStudio Marktplatzes
+
+Die Reference Extension demonstriert alle wichtigen Konzepte, die für die Entwicklung von Extensions, die direkt im mStudio eingebunden werden sollen, relevant sind:
+
+**1. Lifecycle Webhooks**
+
+- Verarbeitung von Lifecycle Events (create, update, remove), um einen State über bestehende Extension Instances aufbauen zu können
+- Speicherung der Instance-Daten in eigener Datenbank
+- Validierung der Webhook Signatur, um Missbrauch zu verhindern
+
+Weitere Informationen zum Zweck und der Funktionsweise von Lifecycle Webhooks können im [Konzeptdokument zu Lifecycle Webhooks](../../overview/concepts/lifecycle-webhooks) nachgelesen werden.
+
+**2. Frontend Fragments**
+
+- Rendering von UI-Komponenten im mStudio via Remote DOM
+- Integration als Menüeintrag im Projekt-Kontext
+- Verwendung des Anchor Points: `/projects/project/menu/section/extensions/item`
+
+Im ["Wie man ein Frontend-Fragment entwickelt"](../../how-to/develop-frontend-fragment)-Guide findest du detailiertere Informationen zur Funktionsweise von Frontend Fragmenten und dem Remote-DOM.
+
+:::info Wichtiger Hinweis zu Frontend Fragments
+Um Frontend direkt in das mStudio integrieren zu können, muss ein Remote DOM bereit gestellt werden.
+Das Bootstrapping der Reference Extension übernimmt das für dich.
+Das Remote DOM im mStudio erfordert die Verwendung von **Flow Design System Komponenten**.
+Standard HTML-Elemente wie `