Files
openStack/docs/ROADMAP.md
T
x3 a407a1381a
ci / backend (push) Canceled after 0s
ci / frontend (push) Canceled after 0s
docs: setup, hosting, API, architecture and roadmap
- SETUP: local dev guide (env vars, DB migrate, backend/frontend, troubleshooting)
- HOSTING: bare-metal guide (systemd + Nginx + TLS + backups) and Docker Compose
  guide (deploy, reverse proxy, updates, backup/restore)
- API: REST contract with curl examples and Socket.IO event protocol
- ARCHITECTURE: stack, data model, auth model, realtime design, theming
- ROADMAP: webapp MVP/next steps plus Tauri desktop clients for Windows, macOS
  and Linux with release-binary plan
2026-09-22 13:33:22 +02:00

2.6 KiB

Roadmap

Phase 1 — Web app MVP (this repo, v0.1) ✅

  • Auth (register/login/JWT), workspaces, invites, roles
  • Nested pages, TipTap rich text, comments, search
  • Socket.IO realtime (live updates, presence, typing)
  • Light/dark mode
  • Bare-metal + Docker Compose hosting docs
  • Hardening: refresh tokens, email verification, password reset
  • Tests: backend integration tests (auth/workspaces/pages), frontend smoke test
  • Uploads: cover images / attachments (S3-compatible or local volume)

Phase 2 — Collaboration+ (v0.2)

  • Yjs (Hocuspocus) CRDT editing to replace last-write-wins
  • Page sharing links (public read-only), granular page permissions
  • Version history / restore snapshots
  • Notifications (mentions, invites) + activity feed
  • i18n (English + German at minimum)

Phase 3 — Desktop clients (v0.3): Windows / macOS / Linux binaries

Goal: installable desktop apps published as GitHub/Gitea Release binaries (.exe/.msi, .dmg, .AppImage/.deb).

Chosen approach: Tauri v2 (Rust core + existing Vue frontend as webview):

  • Small binaries (~10MB), native OS integration, auto-updater support.
  • Alternative considered: Electron (larger, heavier) — fallback if native modules block Tauri.

Steps:

  1. Add src-tauri/ (Tauri v2 init), reuse frontend/dist as bundle frontend.
  2. Deep-link + offline cache: bundle API base-URL setting screen; local-first drafts in IndexedDB with background sync.
  3. CI build matrix (Gitea Actions / GitHub Actions): tauri-action on windows-latest, macos-latest, ubuntu-latest.
  4. Code signing: Windows (SignPath/Azure Trusted Signing), macOS (Developer ID
    • notarization), Linux (GPG .sig + checksums).
  5. Auto-update feed (updater.json in Releases) + in-app update prompt.
  6. Publish flow: tag vX.Y.Z -> CI builds 3 binaries -> attach to https://git.sysdaemon.xyz/x3/openStack/releases.
  7. Distribution extras: winget/Scoop manifests, Homebrew cask, Flathub submission.

Release artifact naming:

openStack_0.3.0_x64-setup.exe      (Windows)
openStack_0.3.0_x64.dmg            (macOS Intel)
openStack_0.3.0_aarch64.dmg        (macOS Apple Silicon)
openStack_0.3.0_amd64.AppImage     (Linux)

Track desktop work in issues with label client. Web app remains the primary target until v0.3; API stays compatible (desktop = wrapper around the same frontend + API).

Phase 4 — Mobile / polish (v0.4+, tentative)

  • PWA packaging (installable web app) before native mobile
  • Evaluate Capacitor/Tauri-mobile for Android/iOS