+
+## Deployment process overview
+
+
+
+## Table of contents
+
+### [Numbus Server](https://gittea.dev/numbus/numbus-server)
+
+* [Presentation](https://gittea.dev/numbus/numbus-server)
+* [Requirements](./numbus-server/requirements.md)
+* [Configuration](./numbus-server/configuration/index.md)
+* [Deployment](./numbus-server/deployment/index.md)
+* [Updates](./numbus-server/updates/index.md)
+* [Maintenance](./numbus-server/maintenance/index.md)
+
+### [Numbus Backup Server](https://gittea.dev/numbus/numbus-backup-server)
+
+* [Presentation](https://gittea.dev/numbus/numbus-backup-server)
+* [Requirements](./numbus-backup-server/requirements.md)
+* [Configuration](./numbus-backup-server/configuration/index.md)
+* [Deployment](./numbus-backup-server/deployment/index.md)
+* [Updates](./numbus-backup-server/updates/index.md)
+* [Maintenance](./numbus-backup-server/maintenance/index.md)
+
+### [Numbus Computer](https://gittea.dev/numbus/numbus-computer)
+
+* [Presentation](https://gittea.dev/numbus/numbus-computer)
+* [Requirements](./numbus-computer/requirements.md)
+* [Configuration](./numbus-computer/configuration/index.md)
+* [Deployment](./numbus-computer/deployment/index.md)
+* [Updates](./numbus-computer/updates/index.md)
+* [Maintenance](./numbus-computer/maintenance/index.md)
+
+### [Numbus TV](https://gittea.dev/numbus/numbus-tv)
+
+* [Presentation](https://gittea.dev/numbus/numbus-tv)
+* [Requirements](./numbus-tv/requirements.md)
+* [Configuration](./numbus-tv/configuration/index.md)
+* [Deployment](./numbus-tv/deployment/index.md)
+* [Updates](./numbus-tv/updates/index.md)
+* [Maintenance](./numbus-tv/maintenance/index.md)
\ No newline at end of file
diff --git a/docs/logo.png b/docs/logo.png
new file mode 100644
index 0000000..28581fa
Binary files /dev/null and b/docs/logo.png differ
diff --git a/docs/numbus-backup-server/requirements.md b/docs/numbus-backup-server/requirements.md
new file mode 100644
index 0000000..ca8528e
--- /dev/null
+++ b/docs/numbus-backup-server/requirements.md
@@ -0,0 +1,31 @@
+# Requirements
+
+### To deploy
+
+To deploy a numbus-backup-server, you will need :
+
+* A **live NixOS** bootable USB disk.
+
+You will make the **target** machine **boot** into the NixOS live environment using this **USB stick**. Download the [NixOS iso](https://github.com/nix-community/nixos-images/releases/download/nixos-unstable/nixos-installer-x86_64-linux.iso) image.
+
+*On Linux* : Flash it using [Impression (flatpak)](https://flathub.org/en/apps/io.gitlab.adhami3310.Impression) or [BalenaEtcher (AppImage)](https://etcher.balena.io/#download-etcher).
+
+*On MacOS* : Flash it using [BalenaEtcher](https://etcher.balena.io/#download-etcher).
+
+*On Windows* : Flash it using [Rufus](https://rufus.ie/en/#download) or [BalenaEtcher](https://etcher.balena.io/#download-etcher).
+
+* **Source** Machine:
+
+Can be any machine with **Nix installed**, e.g. a **NixOS** machine.
+
+* **Target** Machine:
+
+Can be **any computer** (desktop, SFF, tiny/mini/micro, even a laptop). It could be a dedicated server that you bought or just some computer that you decided to repurpose into a backup server.
+
+* **Network connection** between the source and the target machine.
+
+---
+
+### Next step
+
+[Configuration](./configuration/index.md)
diff --git a/docs/numbus-computer/requirements.md b/docs/numbus-computer/requirements.md
new file mode 100644
index 0000000..ca8528e
--- /dev/null
+++ b/docs/numbus-computer/requirements.md
@@ -0,0 +1,31 @@
+# Requirements
+
+### To deploy
+
+To deploy a numbus-backup-server, you will need :
+
+* A **live NixOS** bootable USB disk.
+
+You will make the **target** machine **boot** into the NixOS live environment using this **USB stick**. Download the [NixOS iso](https://github.com/nix-community/nixos-images/releases/download/nixos-unstable/nixos-installer-x86_64-linux.iso) image.
+
+*On Linux* : Flash it using [Impression (flatpak)](https://flathub.org/en/apps/io.gitlab.adhami3310.Impression) or [BalenaEtcher (AppImage)](https://etcher.balena.io/#download-etcher).
+
+*On MacOS* : Flash it using [BalenaEtcher](https://etcher.balena.io/#download-etcher).
+
+*On Windows* : Flash it using [Rufus](https://rufus.ie/en/#download) or [BalenaEtcher](https://etcher.balena.io/#download-etcher).
+
+* **Source** Machine:
+
+Can be any machine with **Nix installed**, e.g. a **NixOS** machine.
+
+* **Target** Machine:
+
+Can be **any computer** (desktop, SFF, tiny/mini/micro, even a laptop). It could be a dedicated server that you bought or just some computer that you decided to repurpose into a backup server.
+
+* **Network connection** between the source and the target machine.
+
+---
+
+### Next step
+
+[Configuration](./configuration/index.md)
diff --git a/docs/numbus-server/configuration/index.md b/docs/numbus-server/configuration/index.md
new file mode 100644
index 0000000..a88d970
--- /dev/null
+++ b/docs/numbus-server/configuration/index.md
@@ -0,0 +1,19 @@
+# Numbus Server documentation
+
+## ✏️ Filling the configuration file
+
+You can deploy the numbus-server without using a configuration file, **but I would strongly advise it** as it diminishes the risk of **typos** when providing credentials. It also creates a file that you can **keep**, **reuse**, **consult** whenever you are **in doubt** about a certain setting.
+
+> 🚀 Let's fill this configuration file !
+
+The configuration file is divided into **multiple categories**. Some of them are **optional**, some are **mandatory**. Here is the list of categories :
+
+| Category | Available variables |
+| -------- | ------------------ |
+| [Live target settings](./live_target.md) | 2 |
+| [Server settings](/.server.md) | 7 |
+| [Mail settings](./mail.md) | 4 |
+| [Traefik settings](./automatic_ssl_certs.md) | 1 |
+| [Network settings](./network.md) | 3 |
+| [Services selection](./services/index.md) | 5 |
+| [Script settings](./script.md) | 1 |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/live_target.md b/docs/numbus-server/configuration/live_target.md
new file mode 100644
index 0000000..f351f45
--- /dev/null
+++ b/docs/numbus-server/configuration/live_target.md
@@ -0,0 +1,8 @@
+# Numbus Server documentation
+
+### 📦 Configuring the target settings
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------- | --------- |
+| LIVE_TARGET_IP | The IP address of the target machine. Without the CIDR notation. | "192.168.1.28", "10.10.10.45", ... | |
+| LIVE_TARGET_PASSWD | The password of the target machine that you set using the `passwd` command. | "my-password", ... | |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/mail.md b/docs/numbus-server/configuration/mail.md
new file mode 100644
index 0000000..b4855a1
--- /dev/null
+++ b/docs/numbus-server/configuration/mail.md
@@ -0,0 +1,24 @@
+# Numbus Server documentation
+
+## 📬 Configuring the mail settings
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| SMTP_SERVER_USERNAME | The email address used to send automated emails (alerts, notifications). | "your-address@your-domain.com" | |
+| SMTP_SERVER_PASSWORD | The password or app-specific password for the email account. | "your-secure-password" | |
+| SMTP_SERVER_HOST | The address of the SMTP server. | "smtp.yourdomain.com" | "smtp.gmail.com" |
+| SMTP_SERVER_PORT | The port number for the SMTP server. | "587" or "465" | "587" |
+
+## ❓ I don't already have an SMTP capable email
+
+If your provider doesn't support **standard SMTP**, the easiest solution is to create a **free Gmail account** dedicated to your server.
+
+Gmail allows you to generate an **App Password** which works perfectly for automated alerts.
+
+1. Navigate to the [Google account creation page](https://accounts.google.com/signup). Follow the prompts to create your account. Feel free **not to provide** real information about yourself. Giving your phone number and home address is **not needed**.
+
+2. Once your account is **created** navigate to the [Google account settings](https://myaccount.google.com).
+
+3. In the security page, enable the **two factor authentication (2FA)**. The best way to enable 2FA without providing too much information is using **TOTP codes** (under Authenticator label). You can use the open-source [Ente Auth](https://ente.io/auth/) app to get your **TOTP codes**.
+
+4. Finally, once **2FA** is enabled, you can generate an **app password**. Navigate to the [app passwords page](https://myaccount.google.com/apppasswords). Generate an app password and call it "numbus-server" to **remember** what it is used for.
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/network.md b/docs/numbus-server/configuration/network.md
new file mode 100644
index 0000000..86e8669
--- /dev/null
+++ b/docs/numbus-server/configuration/network.md
@@ -0,0 +1,9 @@
+# Numbus Server documentation
+
+## 🛜 Configuring the server's network settings
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| NETWORK_SUBNET | The local network subnet in CIDR notation. | "192.168.1.0/24", "10.10.10.0/24", ... | "192.168.1.0/24" |
+| NETWORK_ROUTER_IP | The IP address of your internet router/gateway. | "192.168.1.1", "192.168.1.254", ... | "192.168.1.1" |
+| HOME_SERVER_IP | The static IP address to assign to this server (must be outside the router's DHCP range). | "192.168.1.5", "192.168.0.200", ... | "192.168.1.254" |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/script.md b/docs/numbus-server/configuration/script.md
new file mode 100644
index 0000000..ced492b
--- /dev/null
+++ b/docs/numbus-server/configuration/script.md
@@ -0,0 +1,7 @@
+# Numbus Server documentation
+
+## 📜 Configuring the script's settings
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| VERBOSE | Enables verbose logging for the deployment script (useful for debugging). | "true" or "false" | "false" |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/server.md b/docs/numbus-server/configuration/server.md
new file mode 100644
index 0000000..c4965e9
--- /dev/null
+++ b/docs/numbus-server/configuration/server.md
@@ -0,0 +1,13 @@
+# Numbus Server documentation
+
+## ⚙️ Configuring the server settings
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| SERVER_LANGUAGE | The desired language for the server's system and services. | "FR", "DE", "UK", ... | "FR" |
+| SERVER_LOCALE | Defines the server's regional settings, including date, time, and number formatting. | "fr_FR", "de_DE", "en_UK", ... | "fr_FR" |
+| SERVER_TIMEZONE | Sets the server's timezone to ensure accurate timekeeping for logs and services. | "Europe/Paris", "Europe/Berlin", "Europe/London", ... | "Europe/Paris" |
+| SERVER_OWNER_NAME | The name of the server owner. Will be used for emails personnalization and server identification (if you have multiple servers for example). | "Alexandre", "Jane", ... | "Numbus" |
+| SERVER_USER_EMAIL | This email will be used to send friendly alerts in case of problems. | "your-user@your-domain.com" | |
+| SERVER_ADMIN_EMAIL | This email will be used to send complete alerts, including some logs, in case of problems. | "your-admin@your-domain.com" | |
+| SERVER_AUTHORIZED_SSH_PUBKEYS | The public SSH key(s) that will be authorized to access the server. You can add multiple keys in the parenthesis, space-separated. | ( "ssh-ed25519 AAAAoefzefpoipoeCEZJCPEACPAcjapjcpajepcjAPJECJPEJAPJAZ yours@your-domain.com" ) | |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/services/automatic_ssl_certs.md b/docs/numbus-server/configuration/services/automatic_ssl_certs.md
new file mode 100644
index 0000000..5486db2
--- /dev/null
+++ b/docs/numbus-server/configuration/services/automatic_ssl_certs.md
@@ -0,0 +1,7 @@
+# Numbus Server documentation
+
+## 🚦 Configuring Traefik
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| CLOUDFLARE_DNS_API_TOKEN | The Cloudflare API token with "Zone.DNS" permissions, used for SSL certificate generation. | "bA7hdvCOuXGytlNKohi3ZGtlVpf5CHpLuCMiJrE" | null. Not setting this variable will cause the script to fail. |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/services/crafty.md b/docs/numbus-server/configuration/services/crafty.md
new file mode 100644
index 0000000..0ed5cfc
--- /dev/null
+++ b/docs/numbus-server/configuration/services/crafty.md
@@ -0,0 +1,13 @@
+# Numbus Server documentation
+
+## ⛏️ Configuring Crafty Controller
+
+To access your Minecraft server, **ports** need to be **open on the firewall**. In order to **minimize** the number of open ports and thus reduce **risks**, the numbus-server will only open a necessary number of ports that matches the number of minecraft. **Most people** should set the number of servers to **1** of their favorite version.
+
+These option **only configure networking** and **won't** create the Minecraft server for you. You will have to do it in Crafty's interface.
+
+| Variable | Description | Values | Default |
+| -------- | ----------- | ------ | --------- |
+| DYNMAP_ENABLED | Enables the Dynmap feature for Minecraft servers. | "true" or "false" | "false" |
+| WANTED_NUMBER_OF_JAVA_MINECRAFT_SERVERS | The number of Java Edition Minecraft servers you plan on creating. | "0", "1", ..., "100" | "0" |
+| WANTED_NUMBER_OF_BEDROCK_MINECRAFT_SERVERS | The number of Bedrock Edition Minecraft servers you plan on creating. | "0", "1", ..., "100" | "0" |
\ No newline at end of file
diff --git a/docs/numbus-server/configuration/services/custom_subdomain.md b/docs/numbus-server/configuration/services/custom_subdomain.md
new file mode 100644
index 0000000..b110052
--- /dev/null
+++ b/docs/numbus-server/configuration/services/custom_subdomain.md
@@ -0,0 +1,34 @@
+# Numbus Server documentation
+
+## 🌍 Using custom subdomains
+
+**By default**, the name of the service will be the **subdomain**. For example, nextcloud will get the "nextcloud" subdomain. You **should change** those subdomains :
+- If you are using the **same domain name** for **multiple servers** (avoids conflicts)
+- If you just **want** to change them
+
+
+ Transform your device into a secure, reliable and private appliance
using the power of open-soure software.
You will be guided through the configuration process.
+ +Privacy First: No data entered here ever leaves your device.
This configurator runs entirely locally in your browser and is fully private.
+
Select the device type for your new Numbus machine that matches your needs.
+Select your preferred deployment mode. Non-interactive requires a ready-to-go configuration hosted on a git platform.
+Provide the necessary information to connect to the device. It needs to be in a NixOS live environment.
+Set your regional preferences to ensure correct time and language display.
+Select the device type for your new Numbus machine that matches your needs.
+Select your preferred deployment mode. Non-interactive requires a ready-to-go configuration hosted on a git platform.
+Select your preferred replication mode. It compares the current deployment to the old one.
+Provide the necessary information to connect to the device. It needs to be in a NixOS live environment.
+