0.0.1 • Published 1 year ago

basistemplate-2-frontend v0.0.1

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

Base SOA Client

Dies ist eine SPA Webapplikation als Arbeitsumgebung für Sachbearbeiter die auf einem LucomIP System arbeiten. Sie ist das Frontend-Grundgerüst zur Implementierung der LucomIP SOA und verwendet die Nuxt3 Projektstruktur als Grundlage.

Um Abhängigkeiten korrekt zu erfüllen, muss man zusätzliche npm Paketarchive mit passenden npm Scopes einbinden. Die Datei .npmrc_sample dient hierfür als Vorlage, hat aber im Moment noch den alten Nexus Paketproxi (pre Q2 2023) referenziert.

verwendete Technologien

  • TypeScript (v5.x) ist die Programmiersprache
  • tsx ist die Sprache für Komponentendeklaration
  • Vue (v3.x) ist das verwendete VDOM Toolkit
  • GovKit ist das verwendete UI Toolkit, mit Nuxt als Untermenge
  • Nuxt (v3.x) ist das verwendete Metawebframework, das u.a. Vorgaben für Verzeichnisstrukturen und statische Inhalte mitliefert
  • State-Management erfolgt mit Pinia
  • yarn 1.x (yarn classic) ist der Package Manager
  • Rollup, als Untermenge des verwendeten Vite Development Servers, ist der Bundler
  • Vite ist der verwendete FE Development-Server und Build-runner

empfohlene Codestyle CLI Tools

  • prettier als Formatter
  • eslint als Linter (wird nicht zur Formatierung verwendet, Details s.u.)

Regeln

Codeformatierung

  • eingerückt wird mit Tabs (TS, TSX, HTML, CSS, etc.)
  • eslint wird nicht zur Formatierung verwendet
  • prettier wird für Formatierung und Styling via CLI verwendet
  • /node_modules/* und sonstiger externer code wird nicht (re)formatiert, sofern der Code nicht angepasst wurde

String Literale

String Literale innerhalb von TypeScript Code werden mit einfachen Anführungsstrichen (') abgegrenzt. In Vue, Vuetify & TSX werden Literale entsprechend dem jeweiligen Standard für den entsprechenden Kontext abgegrenzt. JSON Literale werden gemäß JSON-Standard mit doppelten Anführungsstrichen (") abgegrenzt.

Entwicklung

Build

npm run build erzeugt (u.a.) eine statische, fertig kompilierte Ausgabe in .output/public.