julian.kiedaischandClaude Opus 5.5 da2ec1dae2 feat(fls): import a .fls topology into the editor model
importProject builds what the simulation core runs from Java's view of a
file: nodes with kinds and ports, links between port ids, device and
interface IP configurations, documentation items with Swift's derived
ids. The core gains the model types it needs (node, link, graph,
documentation item), ported from filius-ipad.

Checked against the Swift import, which the Swift oracle now writes in
full (corpus.swift.json, "state"), on the 13 files Swift reads
completely. Two differences are intended and named in the test:
- a device the file leaves unnamed has Java's default name
  ("Switch / WLAN"), not Swift's;
- multicast_server.fls: useIPAsName refers to a shared Boolean that
  Swift cannot follow; Java shows the IP address, and so do we.
All 23 files import with as many devices and cables as Java has, and an
imported example pings across its router in the core.

Port counts of switches and routers follow Java's lists instead of
Swift's guess from references.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 20:47:47 +00:00

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 (folgt)
packages/doc gemeinsames Dokument (Yjs) (folgt)
packages/editor Oberfläche im Iframe des Dashboards (folgt)
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

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

S
Description
No description provided
Readme GPL-3.0
22 MiB
Languages
TypeScript 85%
Java 11.6%
CSS 1.2%
Swift 1.1%
Shell 0.9%
Other 0.1%