Skip to content
@fixplay-orga

Fixplay

Reparaturplattform für Smartphones und Konsolen – Backend, Frontends und Werkstatt-Tools.

Fixplay

Fixplay

Reparaturplattform für Konsolen, Controller und Smartphones
Königslutter am Elm · fixplay.de · partners.fixplay.de

Backend Kundensite Admin und Partner Desktop Datenbank Packages


Fixplay verbindet die Werkstatt mit Kunden, Partnern und dem eigenen Werkstatt-Alltag — von der öffentlichen Website über die Auftragsabwicklung im Backoffice bis zur Hardware-Diagnose auf dem Werktisch:

  • Kundenshop und Reparaturannahme auf fixplay.de: Preisanfrage, Auftrag, Versand, Zahlung und Statusverfolgung.
  • Backoffice für Werkstatt, Lager und Rechnungen — im Browser und als Android-App, im Produktivbetrieb nur über VPN erreichbar.
  • Partner-Portal für Sucher und Vertrieb mit eigenen Rechten und Sichtbarkeiten.
  • diagnoseTool für NOR-Flash, UART, I²C und Controller-Diagnose direkt an der Werkbank — ohne Cloud-Zwang.

Ein Blick auf die Plattform

Fixplay Startseite
fixplay.de — Reparaturannahme mit Live-Preisberatung
Leistungen und Preise
Leistungen — Plattform, Fehlerbild und Preis auf einen Blick
diagnoseTool
diagnoseTool — NOR-Flash, UART, I²C und Controller-Tests
Fixplay Administration
Administration — Werkstatt, Lager und Rechnungen (VPN)

Systemüberblick

flowchart LR
  subgraph Kunden["Kunden"]
    WEB["fixplay.de<br/>Nuxt 4 · Nitro-BFF"]
  end

  subgraph Intern["Interne Oberflächen"]
    ADMIN["Admin-Dashboard<br/>Vue 3 · Capacitor (Android)"]
    PARTS["Partner-Portal<br/>Vue 3"]
  end

  subgraph Backend["Go-Backend"]
    PUB["Public API :7000<br/>Firebase JWT"]
    ADM["Admin API :7100<br/>Basic Auth · VPN"]
  end

  subgraph Daten["Daten & Integrationen"]
    DB[("MongoDB")]
    PAY["Mollie<br/>Zahlungen"]
    SHIP["Sendcloud / DHL<br/>Versand"]
    S3["Cloudflare R2<br/>Dokumente"]
    EBAY["eBay Browse API<br/>Sourcing"]
    KI["KI-Bewertung<br/>Sourcing-Eval"]
    QL["QL-700 Printserver<br/>Etiketten"]
  end

  TOOL["diagnoseTool<br/>Tauri v2"]
  HW["Werkstatt-Hardware<br/>flashrom · CH341A · DualSense"]

  WEB --> PUB
  PARTS --> PUB
  ADMIN --> ADM

  PUB --> DB
  ADM --> DB
  PUB --> PAY
  PUB --> SHIP
  PUB --> S3
  PUB --> EBAY
  PUB --> KI
  ADM --> SHIP
  ADM --> QL

  TOOL -->|lokal, ohne Cloud| HW
Loading

Kurz erklärt

  • Beide APIs teilen sich den Go-Code (internal/), laufen aber als getrennte Binaries mit eigenen Ports, Auth-Verfahren und Deployments — der öffentliche Traffic erreicht nie die Admin-API.
  • Der Nitro-BFF des Kundenshops hält Firebase-Tokens aus dem Browser heraus und spricht die Public API über den versionierten OpenAPI-Contract an.
  • diagnoseTool arbeitet vollständig lokal: Rust-Traits trennen Hardwarezugriff von der UI, Mock-Implementierungen erlauben Tests und Entwicklung ohne angeschlossenes Gerät.

Repositories

Repository Zweck Stack Auslieferung
fixplay-backend Public API (:7000, Firebase JWT) und Admin API (:7100, Basic Auth) Go 1.25 · Echo · MongoDB Container-Images v*
fixplay-frontend Kundenshop und Reparaturplattform auf fixplay.de Nuxt 4 · Nitro-BFF · OpenAPI-Contract Web-Image web-v*
fixplay-frontend-admin Admin-Dashboard im Browser und als Android-App Vue 3 · PrimeVue · Capacitor Web-Image + APK
fixplay-frontend-partners Partner-Portal für Sucher und Vertrieb Vue 3 · Firebase Auth Web-Image web-v*
fixplay-diagnoseTool Desktop-Tool für NOR-Flash, UART, I²C und Controller-Diagnose Tauri v2 · Rust · Svelte 5 GitHub Releases (Win/Linux, AUR)
ql700-printserver Etikettendruck-Server für den Brother QL-700 Python · FastAPI · pyusb systemd auf dem Print-Pi

Archiviert: fixplay-frontend-legacy (Vue-3-Kundenshop) und fixplay-backend-legacy (Java/Javalin-Backend) — bleiben als Referenz und für die Datenhistorie erhalten.

Releases, Container-Images und der Packages-Tab

Jedes Repository baut und veröffentlicht selbst; die Organisation ist nur der gemeinsame Namensraum. Der Ablauf ist derselbe:

flowchart LR
  TAG["Git-Tag<br/>v1.2.3 oder web-v0.4.0"] --> CI["GitHub Actions<br/>Build · Tests · Signatur"]
  CI --> GHCR["GHCR<br/>ghcr.io/fixplay-orga/…"]
  CI --> REL["GitHub Release<br/>Artefakte · Changelog"]
  GHCR --> DEPLOY["Coolify / Compose<br/>Server zieht Image"]
Loading

Sobald ein Release-Tag gesetzt wird, erscheinen die Images automatisch im Reiter Packages dieser Organisation:

Package Quelle Tag-Schema
ghcr.io/fixplay-orga/fixplay-public-api fixplay-backend v*, latest
ghcr.io/fixplay-orga/fixplay-admin-api fixplay-backend v*, latest
ghcr.io/fixplay-orga/fixplay-frontend-admin fixplay-frontend-admin web-v*, latest
ghcr.io/fixplay-orga/fixplay-frontend fixplay-frontend web-v*, latest
ghcr.io/fixplay-orga/fixplay-frontend-partners fixplay-frontend-partners web-v*, latest

Die Workflows leiten den Namensraum aus ${{ github.repository_owner }} ab — neue Pakete landen also ohne weitere Änderung in der Organisation. Bereits vorhandene Images aus der Zeit vor dem Umzug behalten ihren alten Namespace, bis sie neu getaggt oder in den Einstellungen des Packages übertragen werden.

Arbeitsweise

  • Contract-first: Das Backend veröffentlicht seine OpenAPI-Spec als Release-Asset; die Frontends pinnen Version und SHA256, statt eine Spec von Hand zu pflegen. Contract-Brüche fallen in CI auf, nicht im Browser.
  • Getrennte Oberflächen: Kunden-, Admin- und Partner-Portal haben eigene APIs, Auth-Verfahren und Deployments. Interne Bereiche sind nie öffentlich verlinkt; fehlende Rechte führen bewusst auf 404 statt 403.
  • Testbar ohne Hardware und ohne Fremdsysteme: Rust-Hardwarezugriffe laufen hinter Traits mit Mocks, Go-Tests nutzen testify/mock, die Frontends Vitest, MSW und Docker-Rezepte für reproduzierbare Builds.
  • Deutsch als Produktsprache, Code, Kommentare und Commits auf Englisch — mit deutschen Fachbegriffen dort, wo sie eindeutiger sind.
  • Release über Tags, nicht über Handarbeit: v* fürs Backend und diagnoseTool, web-v* für Web-Images. prod wird nur per Pull Request aktualisiert.

Sicherheit

Bitte Schwachstellen nicht als öffentliches Issue melden. Nutze Security → Report a vulnerability im betroffenen Repository oder wende dich vertraulich an den Repository-Owner. Details stehen in SECURITY.md. Zugangsdaten und API-Keys liegen ausschließlich in GitHub Secrets bzw. .env-Dateien und werden nie committet.

Popular repositories Loading

  1. fixplay-diagnoseTool fixplay-diagnoseTool Public

    Desktop-Tool zum Lesen, Prüfen und Archivieren von NOR-Flash-Dumps und UART-Diagnose (Tauri v2)

    TypeScript 6

  2. .github .github Public

    Organisationsprofil und Community-Dateien der Fixplay-Plattform

Repositories

Showing 2 of 2 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…