Lars Behrends 2481187fe7 routing
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 17:21:30 +01:00
2025-12-28 02:18:18 +01:00

Obsidian | RP Plattform

Obsidian ist ein modernes, webbasiertes Dashboard für Minecraft Roleplay-Server. Es dient als "Immersive Interface" für Spieler und Admins, um Charakterdaten, Inventare, Städte, Organisationen und wirtschaftliche Aktivitäten außerhalb des Spiels darzustellen.

Das Projekt zielt darauf ab, die Lücke zwischen In-Game-Geschehen und Web-Präsenz zu schließen, ohne ein komplexes Backend (PHP/Python/Node) zwingend vorauszusetzen.


Features

👤 Bürger & Charakterakten

  • Visuelles Inventar: Darstellung von Items, Rüstung und NBT-Daten in einem Grid-Layout.
  • Story-Engine: Markdown-Rendering für Charakter-Hintergrundgeschichten.
  • Identity Linking: (Mockup) Discord-Login zur Verknüpfung von Spielern mit ihren RP-Charakteren.

🏙️ Geopolitik & Organisationen

  • Städte-Profile: Banner, Statistiken (Steuern, Verteidigung), Bewohnerlisten und politische Strukturen.
  • Wirtschaftssystem: Spielergeführte Unternehmen mit integrierten Produkt- und Dienstleistungskatalogen.
  • Hierarchie: Darstellung von Gilden, Firmen und Fraktionen.

🛠️ Technische Tools (Simuliert)

  • Datapack Generator: Erstellt automatisch .mcfunction-Dateien für den Minecraft-Server, um Daten sicher via "Item-Umbenennung" (Non-OP Input) zu erfassen.
  • SQL-Konsole: Eine simulierte Datenbank-Oberfläche, um SQL-Queries auf den lokalen Datensätzen auszuführen (für Immersion und Admin-Feeling).
  • Telemetry Dashboard: Echtzeit-ähnliche Statistiken über Server-Aktivitäten.

🚀 Installation & Start

Da dieses Projekt auf modernen Web-Standards (ES Modules & React 19 via CDN) basiert, ist kein Build-Prozess (kein npm run build) zwingend erforderlich, um die Demo zu starten.

Voraussetzungen

  • Ein moderner Browser (Chrome, Firefox, Edge).
  • Ein lokaler Webserver (z.B. VS Code "Live Server", Python http.server oder npx serve).

Starten

  1. Repository klonen oder herunterladen.
  2. Öffne den Ordner im Terminal.
  3. Starte einen statischen Server. Beispiel mit Python:
    python3 -m http.server 8000
    
  4. Öffne http://localhost:8000 im Browser.

⚙️ Architektur & Datenfluss (Konzept)

Obsidian ist als "Serverless"-Viewer konzipiert. In einer echten Produktionsumgebung funktioniert der Datenfluss wie folgt:

  1. Minecraft Server: Ein Datapack (siehe Generator im Tool) exportiert Inventare und Spielerdaten in JSON-Formate in den Server-Log oder via Plugin.
  2. Sync-Script: Ein einfaches Shell/Batch-Skript lädt diese JSON-Dateien per FTP auf den Webserver hoch.
  3. Frontend: Obsidian liest die statischen JSON-Dateien (fetch('/api/players.json')) und stellt sie dar.

Aktueller Status: In dieser Demo-Version werden alle Daten aus constants.ts und MockDatabaseService.ts geladen, um die Funktionalität ohne echten Server zu demonstrieren.


🎨 Tech Stack

  • Framework: React 19 (via ESM Imports)
  • Styling: Tailwind CSS (CDN Runtime für Demo / Buildless Setup)
  • Icons: Custom SVG Set (Lucide-Style)
  • Type Safety: TypeScript (JSDoc/Interfaces im Code)

📸 Projektstruktur

  • index.html: Entry Point & Import Maps.
  • App.tsx: Haupt-Routing und Layout-Logik.
  • pages/: Einzelne Ansichten (Dashboard, Profile, SQL-Manager).
  • components/: Wiederverwendbare UI-Elemente (InventoryGrid, Layout).
  • services/: Simulierte Backend-Logik (Database, Auth).
  • constants.ts: Mock-Daten für Spieler, Städte und Items.

📄 Lizenz

Entwickelt als Konzeptstudie für immersive RP-Communities. Frei verwendbar.

Description
No description provided
Readme 389 KiB
Languages
TypeScript 78.5%
JavaScript 20.4%
HTML 0.7%
Shell 0.4%