Files
mdg-filius/README.md
T
julian.kiedaischandClaude Opus 5.5 9b7ec2fc72 feat(editor): F4.5a the device sheet for PCs, notebooks, switches and modems
Measured first: the new oracle SheetRun types 77 texts into FILIUS' own
settings panels and records what was marked red, what the device took and
what the field showed afterwards. Java's two judgements disagree (red text
taken, black text refused, any int as a modem port, a refused text dropped
without a word); here one rule decides both (packages/doc fields.ts), a
refused text stays marked in the field, and only what Java's model accepts
reaches the document.

- doc: settings.ts (name, label policy, addresses, IP forwarding, DHCP
  stopping the own DHCP server, LAN/WLAN with the wireless connection,
  switch SSID dropping its wireless hosts, retention time, cloud, modem
  port as its pair), sheet.ts (what the sheet shows)
- fls: modemPair/modemPort in one place
- editor: DeviceSheet beside the surface or below it on a phone, opened
  with the selection; every change one undo step
- not adopted from Java: the name overwritten by the MAC address, the
  access point search depending on unrelated devices

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 11:22:28 +00:00

2.2 KiB

mdg-filius

Netzwerksimulation nach FILIUS für den Browser — als App „Filius" im MDG-Dashboard, gemeinsam bearbeitbar.

Based on Filius by Dr. Stefan Freischlad and the Filius project.

Dieses Projekt ist unabhängig. Es wird weder vom ursprünglichen Filius-Projekt (Universität Siegen) noch von filius-project (Filius on iPad) herausgegeben, betrieben oder unterstützt.

Herkunft

Der Simulationskern ist eine Übertragung nach TypeScript aus

Jede übertragene Datei nennt in ihrem Kopf die Quelldatei. CHANGES.md führt die Herkunft je Paket. Lizenz dieses Repos: GPL-3.0 (LICENSE).

Aufbau

Pfad Inhalt
packages/core Simulationskern: Modell, Ereignis-Warteschlange, Protokolle, Anwendungen — ohne DOM, ohne Node
packages/fls .fls lesen, schreiben, Unbekanntes bewahren
packages/doc gemeinsames Dokument (Yjs): Projekt ⇄ Dokument, Schnappschuss des Kerns, Hausmeister, die Änderungen der Werkzeuge und des Geräte-Blatts (mit Javas Eingabeprüfung)
packages/protocol die eine Nachrichtenliste zwischen Editor und Simulationsraum (/sim)
packages/sim Simulationsraum (für Server F und den Web Worker) und LocalSimHost
packages/editor Oberfläche im Iframe des Dashboards (React, Vite): bisher Fläche, Palette, Werkzeuge des Entwurfs und Geräte-Blatt; npm run dev -w @mdg-filius/editor öffnet die Entwicklungsseite
server Filius-Dienst auf Server F (folgt)

Plan und Entscheidungen: knowledge/plans/FILIUS_WEB_PLAN.md im Dashboard.

Entwickeln

npm install
npm run hooks      # Sprachprüfung vor jedem Commit (braucht das Dashboard drumherum)
npm run check      # Typprüfung + Tests
npm run test:browser  # Tests im echten Browser (Playwright, Chromium aus dem Cache)

Code, Kommentare und Testnamen sind englisch; sichtbare Texte stehen hinter i18n-Schlüsseln (Deutsch/Englisch).