Zurück zum Projekt
Dokumentation

Firmen-Intranet

ReactViteNode.jsExpressArgon2PM2

Internes Web-Portal für ein Unternehmen: Passwort-Tresor, Dokumentenablage mit Browser-Office, Kontakte, Lieferanten und Rechteverwaltung — alles an einem Ort.

##Überblick

Für ein mittelständisches Unternehmen habe ich ein internes Web-Portal entwickelt, das mehrere Insellösungen ersetzt: Zugangsdaten, Dokumente, Kontakte und Lieferanten liegen jetzt an einem Ort — mit klaren Rechten, wer was sehen darf.

Das Portal läuft auf einem eigenen Server des Unternehmens. Als internes Werkzeug ist es nicht öffentlich zugänglich, deshalb gibt es keine Live-Demo.

Internes Tool
Typ
React + Node.js
Stack
Sicherheit
Fokus

##Kern-Features

Passwort-Tresor

  • Zugangsdaten verschlüsselt gespeichert
  • Kategorien, Icons & Suche
  • Passwort-Generator
  • Freigabe pro Nutzer statt für alle

Dokumente

  • Ordnerstruktur wie ein Cloud-Drive
  • Upload per Drag & Drop, Rechtsklick-Menü
  • Vorschau & Bearbeitung von Word/Excel im Browser
  • Ordnerfarben, Freigaben & Papierkorb

Stammdaten

  • Kontakte & Lieferanten
  • E-Mail-Konten der Abteilungen
  • Personalübersicht
  • Export-Funktionen

Administration

  • Benutzer- & Rollenverwaltung
  • Audit-Log: wer hat was geändert
  • Passwortwechsel & Sitzungsverwaltung
  • Bestehende Ordner werden beim Start automatisch eingelesen

##Architektur

Single-Page-App mit React und Vite, dahinter eine Express-API. Dateien bleiben echte Dateien im Dateisystem, Metadaten und Rechte liegen getrennt daneben.

Frontend

React-SPA mit Sidebar-Navigation, Modals, Kontextmenüs und Toasts.

API

Express mit getrennten Routen pro Bereich und Middleware für Rollen.

Ablage

Originaldateien im Dateisystem, Metadaten & Berechtigungen als eigene Datenschicht.

Betrieb

Eigener Linux-Server, Prozessverwaltung mit PM2.

##Datenschutz & Sicherheit

  • Passwörter der Nutzer mit Argon2id gehasht
  • Gespeicherte Zugangsdaten mit AES-256 verschlüsselt
  • Rate-Limiting gegen Brute-Force-Versuche beim Login
  • Rollenbasierter Zugriff: jede Person sieht nur, was für sie freigegeben ist

##Tech Stack

React
Frontend
Vite
Build
Node.js
Runtime
Express
API
Argon2 / AES
Kryptografie
PM2
Betrieb