diff --git a/presentation-jenseits-big-tech-reveal.html b/presentation-jenseits-big-tech-reveal.html
index a3ad977..749732b 100644
--- a/presentation-jenseits-big-tech-reveal.html
+++ b/presentation-jenseits-big-tech-reveal.html
@@ -5,472 +5,35 @@
Jenseits von Big Tech – Präsentation
-
+
-
-
-
- Jenseits von Big Tech
- Kontrolle über die eigenen Daten
-
-
-
-
-
- Der Windows-Albtraum
-
- - 📋Datei > Speichern unter
- - ☁️OneDrive will einmischen
- - 🔍Defender scannt ungefragt
- - ⏱️50 Klicks bis zur Speicherung
- - 😤"Das ist nicht mein System"
-
-
-
-
-
-
- Es gibt was anderes
- Und nein, nicht paranoid.
-
-
-
-
-
- Die Idee
- Speicherung + Kalender + Kontakte + Office
-
- - ✅ Einfach zu bedienen
- - ✅ Einfach zu installieren
- - ✅ Funktioniert besser
- - ✅ Keine Bevormundung
- - ✅ Es macht SPASS
-
-
-
-
-
-
- Hardware: Das brauchst du
-
- - 🖥️Alter PC / Laptop (24/7)
- - 🍓Raspberry Pi (stromsparend)
- - 💾NAS (wenn fancy)
- - ☁️Günstiger VPS (5€/Monat)
-
- Wichtig: Der Punkt ist "Anfangen"
-
-
-
-
-
- Docker: Alles in einer Box
- $ docker run nextcloud
- Nextcloud läuft. Überall gleich. Keine Dependency-Hölle.
- Das Beste: Funktioniert auf Linux, Windows, Mac
-
-
-
-
-
- Ansible: Dein Setup ist Code
-
- - Dein System als Textdatei beschreiben
- - Automatisch ausrollen
- - Updates mit 1 Befehl
-
- Kein "Setup-Wizard-Albtraum" mehr
-
-
-
-
-
- WireGuard + DynDNS
- WireGuard: VPN, aber einfach
-
- - Nur die, die ich kenne
- - Verschlüsselt, superschnell
-
- DynDNS
- Meine IP ändert sich, mein Domain bleibt
-
-
-
-
-
- Nextcloud
- Die Zentrale
-
-
-
-
-
- Nextcloud: 4 Funktionen
- 📁Speicherung
- Sync wie Google Drive, auf deiner Hardware
- 📅Kalender & Kontakte
- CardDAV/CalDAV – überall kompatibel
- 📝Office
- OnlyOffice/Collabora – echte Zusammenarbeit
- 🔓Offen
- Keine Lock-in, offene Standards
-
-
-
-
-
- Backups
- Das wichtigste Stück
-
-
-
-
-
- Die Katastrophe
-
- - ❌ Hardwareausfall bei meinen Eltern
- - ❌ Backup 3 Monate ausgefallen
- - ❌ KeePass-Passwörter werden gelöscht
- - ✅ Aber: Backup auf Mamas Rechner – gerettet!
-
- Lektionen gelernt:
-
-
-
-
-
- Die Lektionen
-
- - 1️⃣ Nur getestete Backups sind Backups
- - 2️⃣ Nie auf nur ein Ziel setzen
- - 3️⃣ Backups müssen vor deinen Fehlern schützen
-
-
-
-
-
-
- Das Backup-Setup
- Borg (Linux) oder Duplicati (Windows)
- $ borg create /mnt/backups::{now} /home/nextcloud
- Täglich automatisch, auf mehrere Standorte verteilt
-
-
-
-
-
- Die Phasen
- Nicht alles auf einmal
-
-
-
-
-
- Phase 1: Wochenende
-
- - 1. Docker installieren
- - 2. Nextcloud starten (ein Befehl!)
- - 3. 20 GB lokal synchronisieren
- - ✅ "Hey, das funktioniert ja!"
-
-
-
-
-
-
- Phase 2: Woche 2–4
-
- - Kalender/Kontakte importieren
- - Ansible-Playbook schreiben
- - ✅ "Das ist mein System jetzt"
-
-
-
-
-
-
- Phase 3: Monat 2–3
-
- - Borg / Duplicati installieren
- - Backup-Cron schreiben
- - Backup testen (!)
- - RSync auf 2. Standort einrichten
- - ✅ "Das ist sicher"
-
-
-
-
-
-
- Phase 4+: Optional
-
- - 📧E-Mail (sobald du DNS kannst)
- - 💬Matrix, Mastodon, Vaultwarden
- - 🏠Home Assistant
- - 🌐Website mit Hugo + Nginx
- - ✅ "Ich hab Feuer gefangen!"
-
-
-
-
-
-
- Reality Check
- Das ist nicht für jeden
-
-
-
-
-
- Aber dafür…
-
- - ✅ Keine bevormundende Software
- - ✅ Keine 100 Klicks zum Speichern
- - ✅ Keine versteckten Algorithmen
- - ✅ Funktioniert BESSER
- - ✅ Du bist der Owner
-
-
-
-
-
-
- Wenn du Feuer gefangen hast…
-
- - 📧E-Mail (Postfix + Dovecot)
- - 💬Matrix (dezentrales Chat)
- - 📱Mastodon (dein Twitter)
- - 🎮Spiele-Server
- - 🤖Home Assistant
-
- Dein System, deine Regeln
-
-
-
-
-
- Mein System gehört mir.
- Und es funktioniert besser.
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/slides/slide-01-title.js b/slides/slide-01-title.js
new file mode 100644
index 0000000..f16e4b4
--- /dev/null
+++ b/slides/slide-01-title.js
@@ -0,0 +1,10 @@
+document.write(`
+
+ Jenseits von Big Tech
+ Kontrolle über die eigenen Daten
+
+
+`);
diff --git a/slides/slide-02-windows-problem.js b/slides/slide-02-windows-problem.js
new file mode 100644
index 0000000..ca24d55
--- /dev/null
+++ b/slides/slide-02-windows-problem.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Der Windows-Albtraum
+
+ - 📋Datei > Speichern unter
+ - ☁️OneDrive will einmischen
+ - 🔍Defender scannt ungefragt
+ - ⏱️50 Klicks bis zur Speicherung
+ - 😤"Das ist nicht mein System"
+
+
+
+`);
diff --git a/slides/slide-03-solution-intro.js b/slides/slide-03-solution-intro.js
new file mode 100644
index 0000000..a1057ee
--- /dev/null
+++ b/slides/slide-03-solution-intro.js
@@ -0,0 +1,9 @@
+document.write(`
+
+ Es gibt was anderes
+ Und nein, nicht paranoid.
+
+
+`);
diff --git a/slides/slide-04-vision.js b/slides/slide-04-vision.js
new file mode 100644
index 0000000..caac21f
--- /dev/null
+++ b/slides/slide-04-vision.js
@@ -0,0 +1,16 @@
+document.write(`
+
+ Die Idee
+ Speicherung + Kalender + Kontakte + Office
+
+ - ✅ Einfach zu bedienen
+ - ✅ Einfach zu installieren
+ - ✅ Funktioniert besser
+ - ✅ Keine Bevormundung
+ - ✅ Es macht SPASS
+
+
+
+`);
diff --git a/slides/slide-05-hardware.js b/slides/slide-05-hardware.js
new file mode 100644
index 0000000..0c6234f
--- /dev/null
+++ b/slides/slide-05-hardware.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Hardware: Das brauchst du
+
+ - 🖥️Alter PC / Laptop (24/7)
+ - 🍓Raspberry Pi (stromsparend)
+ - 💾NAS (wenn fancy)
+ - ☁️Günstiger VPS (5€/Monat)
+
+ Wichtig: Der Punkt ist "Anfangen"
+
+
+`);
diff --git a/slides/slide-06-docker.js b/slides/slide-06-docker.js
new file mode 100644
index 0000000..aa68040
--- /dev/null
+++ b/slides/slide-06-docker.js
@@ -0,0 +1,11 @@
+document.write(`
+
+ Docker: Alles in einer Box
+ $ docker run nextcloud
+ Nextcloud läuft. Überall gleich. Keine Dependency-Hölle.
+ Das Beste: Funktioniert auf Linux, Windows, Mac
+
+
+`);
diff --git a/slides/slide-07-ansible.js b/slides/slide-07-ansible.js
new file mode 100644
index 0000000..081d9ed
--- /dev/null
+++ b/slides/slide-07-ansible.js
@@ -0,0 +1,14 @@
+document.write(`
+
+ Ansible: Dein Setup ist Code
+
+ - Dein System als Textdatei beschreiben
+ - Automatisch ausrollen
+ - Updates mit 1 Befehl
+
+ Kein "Setup-Wizard-Albtraum" mehr
+
+
+`);
diff --git a/slides/slide-08-wireguard-dyndns.js b/slides/slide-08-wireguard-dyndns.js
new file mode 100644
index 0000000..16f9482
--- /dev/null
+++ b/slides/slide-08-wireguard-dyndns.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ WireGuard + DynDNS
+ WireGuard: VPN, aber einfach
+
+ - Nur die, die ich kenne
+ - Verschlüsselt, superschnell
+
+ DynDNS
+ Meine IP ändert sich, mein Domain bleibt
+
+
+`);
diff --git a/slides/slide-09-nextcloud-intro.js b/slides/slide-09-nextcloud-intro.js
new file mode 100644
index 0000000..a87d416
--- /dev/null
+++ b/slides/slide-09-nextcloud-intro.js
@@ -0,0 +1,9 @@
+document.write(`
+
+ Nextcloud
+ Die Zentrale
+
+
+`);
diff --git a/slides/slide-10-nextcloud-features.js b/slides/slide-10-nextcloud-features.js
new file mode 100644
index 0000000..1930557
--- /dev/null
+++ b/slides/slide-10-nextcloud-features.js
@@ -0,0 +1,16 @@
+document.write(`
+
+ Nextcloud: 4 Funktionen
+ 📁Speicherung
+ Sync wie Google Drive, auf deiner Hardware
+ 📅Kalender & Kontakte
+ CardDAV/CalDAV – überall kompatibel
+ 📝Office
+ OnlyOffice/Collabora – echte Zusammenarbeit
+ 🔓Offen
+ Keine Lock-in, offene Standards
+
+
+`);
diff --git a/slides/slide-11-backups-intro.js b/slides/slide-11-backups-intro.js
new file mode 100644
index 0000000..e342910
--- /dev/null
+++ b/slides/slide-11-backups-intro.js
@@ -0,0 +1,9 @@
+document.write(`
+
+ Backups
+ Das wichtigste Stück
+
+
+`);
diff --git a/slides/slide-12-disaster-story.js b/slides/slide-12-disaster-story.js
new file mode 100644
index 0000000..d3eff59
--- /dev/null
+++ b/slides/slide-12-disaster-story.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Die Katastrophe
+
+ - ❌ Hardwareausfall bei meinen Eltern
+ - ❌ Backup 3 Monate ausgefallen
+ - ❌ KeePass-Passwörter werden gelöscht
+ - ✅ Aber: Backup auf Mamas Rechner – gerettet!
+
+ Lektionen gelernt:
+
+
+`);
diff --git a/slides/slide-13-lessons.js b/slides/slide-13-lessons.js
new file mode 100644
index 0000000..8873db6
--- /dev/null
+++ b/slides/slide-13-lessons.js
@@ -0,0 +1,13 @@
+document.write(`
+
+ Die Lektionen
+
+ - 1️⃣ Nur getestete Backups sind Backups
+ - 2️⃣ Nie auf nur ein Ziel setzen
+ - 3️⃣ Backups müssen vor deinen Fehlern schützen
+
+
+
+`);
diff --git a/slides/slide-14-backup-setup.js b/slides/slide-14-backup-setup.js
new file mode 100644
index 0000000..47a3a4e
--- /dev/null
+++ b/slides/slide-14-backup-setup.js
@@ -0,0 +1,11 @@
+document.write(`
+
+ Das Backup-Setup
+ Borg (Linux) oder Duplicati (Windows)
+ $ borg create /mnt/backups::{now} /home/nextcloud
+ Täglich automatisch, auf mehrere Standorte verteilt
+
+
+`);
diff --git a/slides/slide-15-phases-intro.js b/slides/slide-15-phases-intro.js
new file mode 100644
index 0000000..2c53c8b
--- /dev/null
+++ b/slides/slide-15-phases-intro.js
@@ -0,0 +1,9 @@
+document.write(`
+
+ Die Phasen
+ Nicht alles auf einmal
+
+
+`);
diff --git a/slides/slide-16-phase-1.js b/slides/slide-16-phase-1.js
new file mode 100644
index 0000000..81a941c
--- /dev/null
+++ b/slides/slide-16-phase-1.js
@@ -0,0 +1,14 @@
+document.write(`
+
+ Phase 1: Wochenende
+
+ - 1. Docker installieren
+ - 2. Nextcloud starten (ein Befehl!)
+ - 3. 20 GB lokal synchronisieren
+ - ✅ "Hey, das funktioniert ja!"
+
+
+
+`);
diff --git a/slides/slide-17-phase-2.js b/slides/slide-17-phase-2.js
new file mode 100644
index 0000000..8559bb7
--- /dev/null
+++ b/slides/slide-17-phase-2.js
@@ -0,0 +1,13 @@
+document.write(`
+
+ Phase 2: Woche 2–4
+
+ - Kalender/Kontakte importieren
+ - Ansible-Playbook schreiben
+ - ✅ "Das ist mein System jetzt"
+
+
+
+`);
diff --git a/slides/slide-18-phase-3.js b/slides/slide-18-phase-3.js
new file mode 100644
index 0000000..ce51ee5
--- /dev/null
+++ b/slides/slide-18-phase-3.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Phase 3: Monat 2–3
+
+ - Borg / Duplicati installieren
+ - Backup-Cron schreiben
+ - Backup testen (!)
+ - RSync auf 2. Standort einrichten
+ - ✅ "Das ist sicher"
+
+
+
+`);
diff --git a/slides/slide-19-phase-4-plus.js b/slides/slide-19-phase-4-plus.js
new file mode 100644
index 0000000..f85db19
--- /dev/null
+++ b/slides/slide-19-phase-4-plus.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Phase 4+: Optional
+
+ - 📧E-Mail (sobald du DNS kannst)
+ - 💬Matrix, Mastodon, Vaultwarden
+ - 🏠Home Assistant
+ - 🌐Website mit Hugo + Nginx
+ - ✅ "Ich hab Feuer gefangen!"
+
+
+
+`);
diff --git a/slides/slide-20-reality-check.js b/slides/slide-20-reality-check.js
new file mode 100644
index 0000000..df82dcb
--- /dev/null
+++ b/slides/slide-20-reality-check.js
@@ -0,0 +1,9 @@
+document.write(`
+
+ Reality Check
+ Das ist nicht für jeden
+
+
+`);
diff --git a/slides/slide-21-benefits.js b/slides/slide-21-benefits.js
new file mode 100644
index 0000000..d7fd314
--- /dev/null
+++ b/slides/slide-21-benefits.js
@@ -0,0 +1,15 @@
+document.write(`
+
+ Aber dafür…
+
+ - ✅ Keine bevormundende Software
+ - ✅ Keine 100 Klicks zum Speichern
+ - ✅ Keine versteckten Algorithmen
+ - ✅ Funktioniert BESSER
+ - ✅ Du bist der Owner
+
+
+
+`);
diff --git a/slides/slide-22-more-horizons.js b/slides/slide-22-more-horizons.js
new file mode 100644
index 0000000..acc62db
--- /dev/null
+++ b/slides/slide-22-more-horizons.js
@@ -0,0 +1,16 @@
+document.write(`
+
+ Wenn du Feuer gefangen hast…
+
+ - 📧E-Mail (Postfix + Dovecot)
+ - 💬Matrix (dezentrales Chat)
+ - 📱Mastodon (dein Twitter)
+ - 🎮Spiele-Server
+ - 🤖Home Assistant
+
+ Dein System, deine Regeln
+
+
+`);
diff --git a/slides/slide-23-closing.js b/slides/slide-23-closing.js
new file mode 100644
index 0000000..e55ab04
--- /dev/null
+++ b/slides/slide-23-closing.js
@@ -0,0 +1,11 @@
+document.write(`
+
+ Mein System gehört mir.
+ Und es funktioniert besser.
+
+
+`);
diff --git a/styles.css b/styles.css
new file mode 100644
index 0000000..4b7edaa
--- /dev/null
+++ b/styles.css
@@ -0,0 +1,163 @@
+:root {
+ --r-background-color: #ffffff;
+ --r-main-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
+ --r-main-font-size: 42px;
+ --r-main-color: #2c2c2c;
+}
+
+body {
+ background: #ffffff;
+}
+
+.reveal {
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
+ background: #ffffff;
+}
+
+.reveal .slides {
+ text-align: left;
+}
+
+.reveal section {
+ padding: 60px !important;
+ height: 100%;
+ display: flex !important;
+ flex-direction: column !important;
+ justify-content: center !important;
+}
+
+.reveal h1, .reveal h2, .reveal h3, .reveal h4, .reveal h5, .reveal h6 {
+ text-transform: none;
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
+ font-weight: 600;
+ color: #2c2c2c;
+}
+
+.reveal h1 {
+ font-size: 3.77em;
+ text-align: center;
+}
+
+.reveal h2 {
+ font-size: 2.5em;
+ border-left: 4px solid #2980b9;
+ padding-left: 30px;
+ margin-bottom: 1em;
+ text-align: left;
+}
+
+.reveal h3 {
+ font-size: 1.6em;
+ color: #2980b9;
+ margin-top: 1em;
+ margin-bottom: 0.5em;
+ border: none;
+ padding: 0;
+ text-align: left;
+}
+
+.reveal p {
+ font-size: 1.3em;
+ line-height: 1.6;
+ color: #2c2c2c;
+ margin: 0.3em 0;
+ text-align: left;
+}
+
+.reveal ul {
+ margin: 0;
+ text-align: left;
+ display: block;
+ width: 100%;
+}
+
+.reveal li {
+ font-size: 1.2em;
+ line-height: 1.8;
+ color: #2c2c2c;
+ margin-bottom: 0.5em;
+ text-align: left;
+ list-style: disc;
+ margin-left: 2em;
+}
+
+.reveal ul ul, .reveal ol ol {
+ margin-left: 2em;
+}
+
+.subtitle {
+ font-size: 1.8em;
+ color: #2980b9;
+ margin-top: 0.5em;
+ text-align: center;
+}
+
+.code {
+ background: #f5f5f5;
+ padding: 12px 16px;
+ border-radius: 4px;
+ font-family: 'Courier New', monospace;
+ font-size: 0.85em;
+ color: #2980b9;
+ border-left: 3px solid #2980b9;
+ margin: 15px 0;
+ text-align: left;
+ display: inline-block;
+}
+
+/* Title slide */
+.reveal .title-slide {
+ background: linear-gradient(135deg, #2980b9 0%, #2980b9 100%);
+ text-align: center;
+}
+
+.reveal .title-slide h1 {
+ color: white;
+ text-align: center;
+}
+
+.reveal .title-slide h2 {
+ color: white;
+ border: none;
+ padding: 0;
+}
+
+.reveal .title-slide .subtitle {
+ color: #e1f0ff;
+ text-align: center;
+}
+
+/* Section slide */
+.reveal .section-slide {
+ background: #2980b9;
+ text-align: center;
+ display: flex !important;
+ align-items: center !important;
+ justify-content: center !important;
+ flex-direction: column !important;
+}
+
+.reveal .section-slide h1, .reveal .section-slide h2 {
+ color: white;
+ border: none;
+ padding: 0;
+ text-align: center;
+}
+
+.reveal .section-slide .subtitle {
+ color: #e1f0ff;
+ text-align: center;
+}
+
+/* Hide controls */
+.reveal .controls {
+ display: none !important;
+}
+
+.reveal .progress {
+ display: none !important;
+}
+
+.emoji {
+ margin-right: 0.3em;
+}