diff --git a/docs/antora.yml b/docs/antora.yml
new file mode 100644
index 0000000..3428d79
--- /dev/null
+++ b/docs/antora.yml
@@ -0,0 +1,6 @@
+---
+name: commons-operator
+version: master
+title: Stackable Commons Operator
+nav:
+  - modules/ROOT/nav.adoc
diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
new file mode 100644
index 0000000..719f56b
--- /dev/null
+++ b/docs/modules/ROOT/nav.adoc
@@ -0,0 +1,6 @@
+* xref:installation.adoc[]
+* xref:configuration.adoc[]
+* xref:usage.adoc[]
+* Concepts
+** xref:authenticationclass.adoc[]
+** xref:reloader.adoc[]
diff --git a/docs/modules/ROOT/pages/authenticationclass.adoc b/docs/modules/ROOT/pages/authenticationclass.adoc
new file mode 100644
index 0000000..6bea0d3
--- /dev/null
+++ b/docs/modules/ROOT/pages/authenticationclass.adoc
@@ -0,0 +1,3 @@
+= `AuthenticationClass`
+
+TODO
diff --git a/docs/modules/ROOT/pages/configuration.adoc b/docs/modules/ROOT/pages/configuration.adoc
new file mode 100644
index 0000000..cf3fa40
--- /dev/null
+++ b/docs/modules/ROOT/pages/configuration.adoc
@@ -0,0 +1,4 @@
+= Configuration
+
+== Command Line Parameters
+At the moment this operator accepts no command line parameters
diff --git a/docs/modules/ROOT/pages/index.adoc b/docs/modules/ROOT/pages/index.adoc
new file mode 100644
index 0000000..2a99020
--- /dev/null
+++ b/docs/modules/ROOT/pages/index.adoc
@@ -0,0 +1,3 @@
+= Stackable Commons Operator
+
+This is an operator for Kubernetes that provides and manages common Object of the Stackable Data Platform.
diff --git a/docs/modules/ROOT/pages/installation.adoc b/docs/modules/ROOT/pages/installation.adoc
new file mode 100644
index 0000000..7f120ad
--- /dev/null
+++ b/docs/modules/ROOT/pages/installation.adoc
@@ -0,0 +1,41 @@
+= Installation
+
+There are two ways to run the Stackable Commons Operator:
+
+1. Helm managed Docker container deployment on Kubernetes
+
+2. Build from source
+
+
+== Helm
+Helm allows you to download and deploy Stackable operators on Kubernetes and is by far the easiest installation method. First ensure that you have installed the Stackable Operators Helm repository:
+
+[source,console]
+----
+$ helm repo add stackable https://repo.stackable.tech/repository/helm-stable/
+----
+
+Then install the Stackable Commons Operator
+
+[source,console]
+----
+$ helm install commons-operator stackable/commons-operator
+----
+
+Helm will deploy the operator in Kubernetes and apply the CRDs.
+
+== Building the operator from source
+
+After cloning the commons-operator repor you can use the following command to apply the CRDs:
+
+[source,console]
+----
+$ cargo run -- crd | kubectl apply -f -
+----
+
+Use the following command to run the operator:
+
+[source,console]
+----
+$ cargo run -- run
+----
diff --git a/docs/modules/ROOT/pages/reloader.adoc b/docs/modules/ROOT/pages/reloader.adoc
new file mode 100644
index 0000000..8af906c
--- /dev/null
+++ b/docs/modules/ROOT/pages/reloader.adoc
@@ -0,0 +1,3 @@
+= `Reloader`
+
+TODO
diff --git a/docs/modules/ROOT/pages/usage.adoc b/docs/modules/ROOT/pages/usage.adoc
new file mode 100644
index 0000000..24f192d
--- /dev/null
+++ b/docs/modules/ROOT/pages/usage.adoc
@@ -0,0 +1,16 @@
+= Usage
+
+The commons-operator is used for multiple purposes:
+
+
+[%autowidth.stretch]
+|===
+|Component|Purpose
+
+|xref:authenticationclass.adoc[]
+|An CRD describing an generic authentication method like LDAP or Kerberos.
+Multiple operators use this CRD as a way to express the autentication of the product.
+
+|xref:reloader.adoc[]
+|An operator that watches `StatefulSets` and restarts them if mounted `ConfigMap` or `Secret` changes
+|===