Zum Inhalt springen
elek.io

Dein CMS braucht keinen Server und deine Website wahrscheinlich auch nicht.

Mit elek.io wird dein CMS als Desktop-App auf deinem eigenen Gerät laufen, auch offline. Wir finden, die meisten Websites sollten statisch sein: neu gebaut, wenn sich ihre Inhalte ändern, und nicht noch einmal bei jeder Anfrage.

Warum statisch

Die meisten Websites ändern sich nur ab und zu. Ihr CMS läuft trotzdem rund um die Uhr.

Wir finden, die meisten Websites brauchen keinen eigenen Server und sind ohne einen besser dran. Hier sind die Gründe.

Ein CMS auf einem Server

Liefert an Besuchende aus
HTML, CSS und Bilder Was Besuchende bekommen
Theme und Plugins Elementor, Yoast SEO, Contact Form 7, … 3 Updates
CMS WordPress, TYPO3, Drupal, …
Laufzeitumgebung PHP, Node.js, …
Datenbank MySQL, MariaDB, PostgreSQL, …
Server Linux mit Apache oder nginx, … Immer an
Updates Backups Monitoring Hosting-Rechnung

Alles unter den Dateien läuft rund um die Uhr, ob gerade jemand die Website besucht oder nicht, und jede Schicht braucht eigene Updates.

Eine statische Website

Liefert an Besuchende aus
HTML, CSS und Bilder Was Besuchende bekommen
Dateispeicher Webspace, S3, GitHub Pages, … Liefert nur Dateien aus

Besuchende bekommen dieselben Dateien, allein aus dem Dateispeicher. Sonst läuft nichts von der Website, während jemand sie liest.

Ohne Server

Was eine statische Website besser kann.

Einfacher als Dateien auf einem Speicher wird eine Website nicht. Das heißt: kürzere Wartezeiten, weniger Angriffsfläche, kleinere Rechnungen und weniger Updates.

Zeit auf dem Server. Median aus 100 Anfragen. Ein CMS auf einem Server, 45 ms. CMS +13 ms. Datenbank +11 ms. Theme +21 ms. Eine statische Website, 0,5 ms. Datei +0,5 ms.

Schnell. Besuchende bekommen fertige Dateien. Keine Seite wird erst bei der Anfrage zusammengesetzt.

Gemessen mit WordPress auf einem Laptop. Andere Hardware liefert abweichende Zahlen.

access.log. "GET /wp-login.php HTTP/1.1" 404 "POST /xmlrpc.php HTTP/1.1" 404 "GET /.env HTTP/1.1" 404 "GET /wp-admin/ HTTP/1.1" 404 Hier gibt es keinen Login.

Sicher. Keine Datenbank, keine Login-Seite und kein Plugin ist online. Es gibt wenig anzugreifen und nichts, das Sicherheitsupdates braucht.

Hosting-Rechnung, September. Dateispeicher, 0,3 GB. Traffic, 21 GB. Serverstunden, 0. Summe, kostenloser Tarif, 0,00 €.

Günstig. Hosting-Anbieter rechnen Speicher und Traffic ab, keinen Server, der wartet. Viele kleine Websites werden kostenlos gehostet.

Antwortzeit. Ansturm. Server, Bis zu 18,4 s. Statisch, Bis zu 4,3 ms. 250 ms.

Gelassen unter Last. Ein Ansturm heißt nur: mehr Anfragen nach denselben Dateien.

Gemessen mit WordPress auf einem Laptop. Andere Hardware liefert abweichende Zahlen.

Laufzeit-Updates, Keine. Datenbank-Backups, Keine. Verlauf der Inhalte, In Git.

Wenig Wartung. Keine Laufzeitumgebung zu aktualisieren und keine Datenbank zu sichern. Jede Änderung wird mit Git versioniert.

Bisheriger Host, dist/. Neuer Host, dist/.

Portabel. Jeder Webspace und jeder Bucket funktioniert. Ein Umzug heißt: Dateien kopieren, keine Datenbank migrieren.

Warum noch ein CMS

Wir haben kein CMS für statische Websites gefunden, das Inhalte so verwaltet wie eines auf einem Server. Also bauen wir eins.

Die CMS, die wir gefunden haben, legen Inhalte im Repository der Website selbst ab, gebunden an diese eine Website. Ihre gehosteten Tarife berechnen nach den ersten paar Zugängen jeden weiteren, und Übersetzungen sind oft eine Schwachstelle.

Projekte
Alle deine Inhalte in einem Git-Repository, getrennt vom Code der Websites und Apps, die sie nutzen. Jede Änderung wird als Commit gespeichert, also zeigt Git, wer was geändert hat, und kann jeden früheren Stand wiederherstellen.

Changed Teaser, 2 min ago. Added showroom.jpg, Yesterday. Release 1.4.0, Sep 28.

Sammlungen
Eine für jede Art von Inhalt, etwa Fahrzeuge, Standorte oder Seiten, mit den Feldern, die du festlegst. 18 Feldtypen, von Text und Datum bis zu Auswahllisten und Markdown, jeweils mit Regeln wie Pflichtfeld, eindeutig oder maximale Länge.
Einträge
Ein Fahrzeug, ein Standort, eine Seite, jeweils mit den Feldern seiner Sammlung. Ein Eintrag verweist auf andere Einträge, statt sie zu kopieren: Ein Fahrzeug zeigt auf seinen Standort, eine neue Adresse änderst du also nur einmal.
Assets
Bilder, PDFs und andere Dateien, einmal gespeichert und von jedem Eintrag aus verlinkbar. Ein Asset, das noch verlinkt ist, lässt sich nicht löschen, also verliert keine Seite ihr Bild.

showroom.jpg, Used by 3 Entries.

Komponenten
Gruppen von Feldern für viele Stellen, etwa eine Bühne, eine Galerie oder Öffnungszeiten. Ein Eintrag enthält beliebig viele davon in beliebiger Reihenfolge, so entsteht eine Seite aus Abschnitten. Ändere eine Komponente, und jede Sammlung, die sie nutzt, zieht mit.
Sprachen
Texte, Zahlen und Verweise lassen sich übersetzen, ebenso Namen, Bezeichnungen und Beschreibungen deiner Sammlungen und ihrer Felder. Kein Plugin und keine Einstellung pro Feld. Ein Pflichtfeld ohne Übersetzung besteht die Prüfung nicht.
Typen
Core erzeugt aus deinen Sammlungen zod-Schemas und TypeScript-Typen, damit dein Code jedes Feld und seinen Typ kennt.

So funktioniert es

Vom ersten Feld bis zu deiner Website und deinen Apps.

Inhalte wirst du in elek.io Desktop anlegen und pflegen, sie mit elek.io Core nutzen und optional von elek.io Cloud hosten und an eine oder mehrere Websites und Apps ausliefern lassen.

Wenn du doch einen Server brauchst

Nicht alles lässt sich vorab bauen.

Deine Website wird aus jedem Release gebaut, bevor jemand sie besucht. Eine native App kann nicht für jede Änderung ein Update ausliefern. Seiten, die auf Anfrage gerendert werden, und Live-Teile statischer Seiten lesen ihre Inhalte erst zur Laufzeit. elek.io Cloud wird jedes Release über eine Content API an beide ausliefern.

Mehr über Cloud In Entwicklung
elek.io Desktop Wird Release 1.5.0 erstellen In Entwicklung
elek.io Core Baut es einmal pro Release
Deine Website Statische Dateien auf einem Dateispeicher
elek.io Cloud Wird es bei jeder Anfrage ausliefern In Entwicklung
Deine Apps Und auf Anfrage gerenderte Seiten

Produkte

Desktop für die Redaktion. Core für das Entwicklungsteam. Cloud nur, wenn du sie brauchst.

Autohaus Ebersfelde, Website. 3 changes not synced. Release 1.4.0, Sep 28. Sync. Checked 2 min ago. Check now.

In Entwicklung

Offline-CMS für Windows, macOS und Linux.

Mehr über Desktop
Alpha

Nutze deine Inhalte und generiere TypeScript-Typen und API-Clients.

Mehr über Core
In Entwicklung

Wenn du doch einen Server brauchst.

Mehr über Cloud

Fragen

Bevor du dich entscheidest.

Was Agenturen und Entwicklungsteams zuerst fragen.

Warum eine Desktop-App und kein Browser?

Ein CMS im Browser läuft auf einem Server: auf deinem eigenen, den du betreibst und aktualisierst, oder auf dem eines Anbieters, der deine Inhalte verwahrt. elek.io Desktop wird stattdessen auf dem Computer jeder Person in der Redaktion laufen und in einen Ordner dort speichern. So wird die Redaktion offline weiterarbeiten können, und die Inhalte werden dort bleiben, wo du sie ablegst. elek.io Desktop ist in Entwicklung, für Windows, macOS und Linux.

Was ist der Unterschied zwischen einem Server und einem Dateispeicher?

Ein Dateispeicher funktioniert wie eine Festplatte im Internet: Er speichert deine Dateien und gibt sie heraus, und nichts von dir läuft dort. Weg ist, was einen Server zu deinem Problem macht: Betriebssystem, Laufzeitumgebung, Datenbank und Updates, und eine Maschine, die für eine einzige Website rund um die Uhr läuft.

Was kostet es?

elek.io Core ist kostenlos. elek.io Desktop wird ebenfalls kostenlos sein. elek.io Cloud wird mit unbegrenzt vielen Zugängen kommen. Die Preise stehen noch nicht fest.

Was passiert mit meinen Inhalten, wenn es elek.io nicht mehr gibt?

Sie bleiben, wo sie sind: in deinem Git-Repository und in einem Ordner auf jedem Computer, der damit arbeitet, als einfache JSON-Dateien, die Assets in Git LFS. Jedes Programm kann sie ohne uns lesen. elek.io Core funktioniert ohne unsere Server, und elek.io Desktop wird das auch.

Braucht die Redaktion ein Konto?

Nicht bei elek.io. elek.io Desktop wird keins brauchen, und nur elek.io Cloud wird nach einem fragen. Um zusammenzuarbeiten, braucht jede Person Zugriff auf das Git-Repository des Projekts, zum Beispiel über ein GitHub-Konto.

Können mehrere Personen am selben Projekt arbeiten?

Dafür ist elek.io Desktop ausgelegt. Jede Person in der Redaktion wird auf einer Kopie auf ihrem eigenen Computer arbeiten, auch offline, und dein Git-Repository wird die Kopien zusammenführen. elek.io Desktop ist in Entwicklung.

Mit welchen Frameworks funktioniert es?

Mit jedem Framework, das statische Dateien baut. elek.io Core hat eine Integration für Astro, und jedes andere Framework kann die JSON-Dateien lesen, die elek export schreibt. Sag uns in den GitHub Discussions öffnet in neuem Tab, für welches Framework du eine Integration möchtest.

elek.io ist in Entwicklung.

Neuigkeiten bekommst du, wenn du uns auf Bluesky folgst.