• v1.0.0 6fc6d977bf

    Messenger v1.0.0
    CI / Web (build + lint) (push) Canceled after 0s
    CI / Go (build + vet + test) (push) Canceled after 0s
    Stable

    vantablackTea released this 2026-09-27 23:28:21 +03:00 | 11 commits to main since this release

    Changelog

    [1.0.0] - 2026-09-27

    First production release. Self-hosted messenger for family and friends,
    built from scratch.

    Added

    • Auth: registration/login, JWT access tokens (15 min) + rotated refresh
      tokens (30 days) in httpOnly cookies, argon2id password hashing,
      session revocation, rate-limited auth endpoints.
    • Chat: direct messages and groups (roles owner/member), read receipts,
      typing indicators, presence, unread counters, keyset pagination.
    • Realtime: in-process WebSocket hub delivering message.created, typing,
      presence, read, reaction and membership events.
    • Media: file upload/download with image thumbnails, S3-like storage
      interface, local disk backend, path-traversal protection, 25 MiB limit.
    • Reactions: emoji reactions on messages with live sync.
    • Search: substring message search scoped to the user's conversations.
    • Web Push: VAPID notifications to offline members (optional, needs keys).
    • PWA: installable app, offline app-shell caching, Web Push service worker.
    • Frontend: React + TypeScript + Tailwind, dark theme, responsive,
      optimistic UI.
    • Observability: Prometheus /metrics (HTTP, WS, runtime), VictoriaMetrics
      • Grafana dashboard in deploy/.
    • Hardening: security headers (CSP, X-Frame-Options, nosniff), request
      body limits, session cleanup, graceful shutdown.
    • Tooling: cmd/keygen (VAPID keys), cmd/seed (demo data),
      GitHub Actions CI with PostgreSQL service.

    Notes

    • Video attachments are supported as files; inline playback is planned.
    • E2EE is on the roadmap via libsignal; TLS in transit is the current baseline.
    Downloads