joetjen.net
EN DE
Web-Framework

Stand und Roadmap

Was existiert, was entsteht, und der Weg zu einem vollständigen Framework. Stand v0.4.0, 29. September 2026.

In Entwicklung · v0.4

Die Bibliotheken heute

Jede Bibliothek im Workspace ist implementiert und getestet; Platzhalter gibt es keine. Sie werden gemeinsam versioniert.

BibliothekSeitAufgabe
webglue_spec0.1Der Request/Response-Vertrag und die Begriffe, ihn zu lesen
webglue_router0.1Routing-Tabellen als Daten, Gruppen, HEAD und OPTIONS, prx routes
webglue_test0.1Requests, Responses und Platzhalter-Handler für Tests, ohne Server
webglue_server0.1Der Adapter-Vertrag, die Paritäts-Suite, prx webglue bench
webglue_bandit0.1Adapter über Bandit: HTTP/1.1, HTTP/2, WebSockets
webglue_wrangler0.2Webglues eigener HTTP/1.1-Server; noch ohne HTTP/2 und TLS
webglue_session0.2Session-Middleware über austauschbaren Store; ein In-Memory-Store
webglue_static0.2Dateien aus einem Verzeichnis, sicher gegen Traversal
webglue_pubsub0.3Topic-Broadcast auf pg, mit Adapter-Nahtstelle
webglue_socket0.3Dauerhafte Verbindungen als Responses; RFC 6455 in beide Richtungen
webglue_presence0.3Wer auf einem Topic verbunden ist, über Knoten hinweg
webglue_cluster0.3Knotenerkennung: statische Listen, DNS
webglue_redis0.3Ein gemeinsamer Redis-Client und ein Redis-Pub/Sub-Adapter
webglue_fragment0.4Server-Push von Daten und Markup-Fragmenten
webglue_db0.4Ein Repository am Request, ausdrückliches Rollback
webglue_validation0.4Prüft und wandelt Parameter, Header und Bodies
webglue_demo0.1Das begleitende Ticketsystem

Meilensteine

  • Fertigv0.1.0 (27. August) — das Kernmuster und minimales HTTP: Vertrag, Router, Test-Helfer, Server-Vertrag, Bandit-Adapter, Demo.
  • Fertigv0.2.0 (24. September) — statische Dateien, Sessions, Wrangler und die Paritäts-Suite, Benchmarks.
  • Fertigv0.3.0 (25. September) — das Echtzeit-Fundament: Pub/Sub, Sockets, Presence, Clustering, Redis.
  • Fertigv0.4.0 (29. September) — Server-Push; die Bibliotheken für Datenschicht und Validierung kamen im selben Release.
  • In Arbeitv0.5.0, Datenschicht — die Bibliotheken stehen und die Demo nutzt sie; offen ist, wie weit die Demo für diesen Meilenstein auf eine echte Datenbank umzieht.
  • Geplantv0.6–v0.13 — REST, OpenAPI und Content-Negotiation; GraphQL; CSRF, CORS, Sicherheits-Header und Kompression; OAuth2 und OpenID Connect; HTTP-Caching; Telemetrie; Jobs und Queues; Mail und Storage.
  • Geplantv1.0 — Backend vollständig.
  • Geplant2.x — das Frontend: von Praxis für den Browser kompilierte Komponenten und eine Morphing-Schicht, die gepushte Fragmente ins DOM überträgt. v2.0 — Frontend vollständig.
  • Geplant3.x — Generatoren wie prx webglue new, OAuth2 im Browser und Fernziele wie HTTP/3. v3.0 — Framework vollständig.

Vorgeschlagen: Templates

Webglue kann noch keine Seite schreiben. Ein Vorschlag — davon ist nichts gebaut — beschreibt HTML-Dateien mit {{ … }}-Lücken und :for/:if-Attributdirektiven, die zur Build-Zeit zu Funktionen kompiliert werden, die Markup-Bäume liefern, mit Komponenten als Tags. Darauf ist eine Live-View nach Art von LiveView vorgeschlagen. Wo das im Plan landet, ist noch offen.

Bekannte Lücken

  • Noch nichts auf Browser-Seite und keine Templates.
  • Wrangler hat kein HTTP/2, kein TLS und lehnt Request-Bodies mit Chunked-Encoding ab.
  • Statische Dateien haben noch keine Caching-Header und Ranges (geplant zusammen mit HTTP-Caching).
  • Sessions haben nur den In-Memory-Store, ohne serverseitiges Ablaufen.
  • Noch keine Content-Negotiation und keine Authentifizierung oder Autorisierung.

Ausprobieren

Noch nicht. Webglue ist nicht veröffentlicht und braucht die Praxis-Toolchain, die ebenfalls noch nicht veröffentlicht ist. Wenn beides so weit ist, ist die Demo-Sitzung der Einstiegspunkt.