docs: PWA als künftiges Feature festgehalten (Plan + Roadmap)
Werkbaum soll installierbar werden. Im mitgelieferten Plan als `#bld.pwa` (M) unter „Build and delivery", mit drei Kindern: Manifest (XS), Service Worker (S) und die Frage, was aus der Update-Anzeige wird (S) — je mit Beschreibungsblock nach D48. Status `[ ]`: beschlossen, nichts investiert. Die Vorarbeit ist getan und steht in den Beschreibungen: Der Build liefert eine einzige Datei mit inlinten Schriften, Stilen und Modulen (D19/D20), es gibt also genau ein Objekt zu cachen, und die Dokumente liegen ohnehin lokal (D22). Offen ist das Zusammenspiel mit D45: Sitzt ein Worker vor der Seite, entscheidet er, was ausgeliefert wird — „der laufende Build gegen den, den der Server schickt" ist dann nicht mehr dieselbe Aussage. Texte aus ?sourceUrl=/?etherpad= bleiben naturgemäß online. Dazu ein Eintrag unter „Kleinere Ideen" in der ROADMAP, der auf `#bld.pwa` verweist. Nachgemessen: 154 Knoten (150 + 4), 0 Warnungen, alle IDs eindeutig, kein Knoten ohne Beschreibung, Stationen 24 -> 27 (die drei neuen Blätter sind offene Pfadarbeit). 240 Tests grün. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
b2248c45bc
commit
7904c82481
@@ -103,6 +103,17 @@ Tastendruck ein Commit); und wer bei einem Backend eigentlich was darf
|
|||||||
Ausbaustufe weiterspringen (Regel: erst die Kette auf `fertig`, dann die
|
Ausbaustufe weiterspringen (Regel: erst die Kette auf `fertig`, dann die
|
||||||
nächste Stufe). Das braucht erst Nutzen + Aufwands-Rollup (oben).
|
nächste Stufe). Das braucht erst Nutzen + Aufwands-Rollup (oben).
|
||||||
- Attribut-Syntax für Termine/Meilensteine.
|
- Attribut-Syntax für Termine/Meilensteine.
|
||||||
|
- **Installierbar als Progressive Web App:** Manifest (Name, Icons,
|
||||||
|
`display: standalone`) plus ein Service Worker, der die Seite aus dem Cache
|
||||||
|
beantwortet — dann startet der Editor ohne Netz und bekommt ein eigenes
|
||||||
|
Fenster samt Symbol. Die Vorarbeit ist getan: Der Build liefert **eine**
|
||||||
|
Datei mit inlinten Schriften, Stilen und Modulen (D19/D20), es gibt also
|
||||||
|
genau ein Objekt zu cachen, und die Dokumente liegen ohnehin lokal (D22).
|
||||||
|
Zu klären ist das Zusammenspiel mit der Update-Anzeige (D45): Sitzt ein
|
||||||
|
Worker vor der Seite, entscheidet **er**, was ausgeliefert wird — „der
|
||||||
|
laufende Build gegen den, den der Server schickt" ist dann nicht mehr
|
||||||
|
dasselbe. Dokumente aus `?sourceUrl=`/`?etherpad=` bleiben naturgemäß
|
||||||
|
online. Im Plan: `#bld.pwa`.
|
||||||
- Schlagworte `&tag` mit einer Filter-/Hervorheben-Linse im Diagramm: Der Baum
|
- Schlagworte `&tag` mit einer Filter-/Hervorheben-Linse im Diagramm: Der Baum
|
||||||
ist genau eine Zerlegung — ein Tag benennt eine Menge von Knoten quer dazu
|
ist genau eine Zerlegung — ein Tag benennt eine Menge von Knoten quer dazu
|
||||||
(z. B. `&frontend` in feature-geschnittenen Slices). Schreibweise reserviert
|
(z. B. `&frontend` in feature-geschnittenen Slices). Schreibweise reserviert
|
||||||
|
|||||||
@@ -82,6 +82,10 @@
|
|||||||
- [^] #bld.tests: Unit tests (S)
|
- [^] #bld.tests: Unit tests (S)
|
||||||
- [^] #bld.pages: Published on every push (S)
|
- [^] #bld.pages: Published on every push (S)
|
||||||
- [^] #bld.update: Says when a new build is out (S) %% compares against the running one, see D45
|
- [^] #bld.update: Says when a new build is out (S) %% compares against the running one, see D45
|
||||||
|
- [ ] #bld.pwa: Installable as a progressive web app (M)
|
||||||
|
- [ ] #bld.pwa.manifest: A manifest with name, icons and standalone display (XS)
|
||||||
|
- [ ] #bld.pwa.sw: A service worker that serves the app offline (S) %% one file to cache
|
||||||
|
- [ ] #bld.pwa.update: The reload notice moves into the worker (S) %% see D45
|
||||||
- [-] #bld.ghpages: Deploy through a gh-pages branch (S) %% GitHub Actions instead
|
- [-] #bld.ghpages: Deploy through a gh-pages branch (S) %% GitHub Actions instead
|
||||||
- [-] #bld.gfonts: Fonts from Google (XS) %% self-hosted, no third-party request
|
- [-] #bld.gfonts: Fonts from Google (XS) %% self-hosted, no third-party request
|
||||||
- [ ] #be: Backend (XL)
|
- [ ] #be: Backend (XL)
|
||||||
@@ -546,6 +550,27 @@
|
|||||||
offers a reload. It compares against itself, not against a remembered
|
offers a reload. It compares against itself, not against a remembered
|
||||||
fetch — a remembered one survives the very reload that resolves it.
|
fetch — a remembered one survives the very reload that resolves it.
|
||||||
|
|
||||||
|
#bld.pwa
|
||||||
|
Installable from the browser and startable like an app, in its own window
|
||||||
|
and with its own icon. Everything it needs is already in one file, so what
|
||||||
|
is missing is mostly the declaration that says so.
|
||||||
|
|
||||||
|
#bld.pwa.manifest
|
||||||
|
Name, icons, theme colour and a standalone display mode — the declaration a
|
||||||
|
browser reads before it offers to install anything. The brand mark exists
|
||||||
|
and needs the raster sizes an installer asks for.
|
||||||
|
|
||||||
|
#bld.pwa.sw
|
||||||
|
A worker answering from the cache lets the editor start without a network.
|
||||||
|
There is exactly one object to cache, because the build inlines fonts,
|
||||||
|
styles and modules; documents live in the browser anyway. Texts pulled from
|
||||||
|
a URL or a pad stay online by their nature.
|
||||||
|
|
||||||
|
#bld.pwa.update
|
||||||
|
With a worker in front of the page, the reload notice has to come from it:
|
||||||
|
it decides what gets served, so "the running build against the one the
|
||||||
|
server sends" is no longer the same comparison.
|
||||||
|
|
||||||
#bld.ghpages
|
#bld.ghpages
|
||||||
Rejected: the official Actions route needs no extra branch and no deploy
|
Rejected: the official Actions route needs no extra branch and no deploy
|
||||||
key.
|
key.
|
||||||
|
|||||||
Reference in New Issue
Block a user