Skip to content

Releases: themadorg/bedrud

Nightly 20260614

14 Jun 03:44

Choose a tag to compare

Nightly 20260614 Pre-release
Pre-release

Nightly Build

Automated nightly build from master at 825b30a.

Changes

  • ci: add auto-deploy workflow for live server instance (825b30a)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:nightly-20260614

This is an automated pre-release. Use tagged releases for production.

Dev 825b30a

13 Jun 14:50

Choose a tag to compare

Dev 825b30a Pre-release
Pre-release

Dev Build

Built from 825b30a.

Changes

  • ci: add auto-deploy workflow for live server instance (825b30a)
  • fix types, clean up imports, and switch react-markdown to direct import (360e2dc)
  • remove inline admin mutations for shared DataTable approach (1910b99)
  • add E2EE architecture docs across 10 locales (45bddfb)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:dev-825b30a

This is an automated pre-release. Use tagged releases for production.

PR #24 Beta – df30800

08 Jun 16:32
df30800

Choose a tag to compare

Pre-release

Beta Build for PR #24

deps(android): bump the gradle-all group across 1 directory with 5 updates

Built from df30800 on branch dependabot/gradle/apps/android/gradle-all-b516f30095.

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
Android (universal) bedrud-android-universal.apk
Android arm64-v8a bedrud-android-arm64-v8a.apk
Android armeabi-v7a bedrud-android-armeabi-v7a.apk
Android x86_64 bedrud-android-x86_64.apk
Android bundle (AAB) bedrud-android.aab
Desktop Linux x86_64 (AppImage) bedrud-desktop-linux-x86_64.AppImage
Desktop Linux x86_64 (portable) bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux x86_64 (.deb) bedrud-desktop-linux-x86_64.deb
Desktop Linux ARM64 (AppImage) bedrud-desktop-linux-arm64.AppImage
Desktop Linux ARM64 (portable) bedrud-desktop-linux-arm64.tar.xz
Desktop Linux ARM64 (.deb) bedrud-desktop-linux-arm64.deb
Desktop Windows x86_64 (installer) bedrud-desktop-windows-x86_64-setup.exe
Desktop Windows x86_64 (portable) bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 (installer) bedrud-desktop-windows-arm64-setup.exe
Desktop Windows ARM64 (portable) bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz

This is an automated beta pre-release. It will be deleted when the PR is closed or merged.

PR #23 Beta – 37cc6c3

08 Jun 16:29
37cc6c3

Choose a tag to compare

Pre-release

Beta Build for PR #23

deps(server): bump the go-all group across 1 directory with 4 updates

Built from 37cc6c3 on branch dependabot/go_modules/server/go-all-a441e98222.

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
Android (universal) bedrud-android-universal.apk
Android arm64-v8a bedrud-android-arm64-v8a.apk
Android armeabi-v7a bedrud-android-armeabi-v7a.apk
Android x86_64 bedrud-android-x86_64.apk
Android bundle (AAB) bedrud-android.aab
Desktop Linux x86_64 (AppImage) bedrud-desktop-linux-x86_64.AppImage
Desktop Linux x86_64 (portable) bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux x86_64 (.deb) bedrud-desktop-linux-x86_64.deb
Desktop Linux ARM64 (AppImage) bedrud-desktop-linux-arm64.AppImage
Desktop Linux ARM64 (portable) bedrud-desktop-linux-arm64.tar.xz
Desktop Linux ARM64 (.deb) bedrud-desktop-linux-arm64.deb
Desktop Windows x86_64 (installer) bedrud-desktop-windows-x86_64-setup.exe
Desktop Windows x86_64 (portable) bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 (installer) bedrud-desktop-windows-arm64-setup.exe
Desktop Windows ARM64 (portable) bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz

This is an automated beta pre-release. It will be deleted when the PR is closed or merged.

v0.10.0

30 May 18:00

Choose a tag to compare

  • Admin dashboard — Complete overhaul featuring tabbed settings, queue health monitoring with events log, overview widgets, a powerful reusable DataTable component (search, pagination, faceted filters, bulk actions), confirmation dialogs for destructive actions, robust error/retry handling, and role-aware UI.
  • Async job queue system — New background job queue with retry and backoff for long-running operations (room/user deletion, suspension, S3 chat upload cleanup). Includes bulk admin endpoints.
  • New subsystems:
    • Recording (foundational wiring, config, and cascade cleanup on room soft-delete).
    • Outbound webhooks with HMAC-SHA256 signing for room events.
    • Full email verification flow (canonicalization, cooldowns, verification audit trail, auto-login on success, dedicated admin settings tab).
  • Security & hardening:
    • Configurable rate limiting (YAML + environment overrides) with tests.
    • In-memory banned user cache + middleware guards.
    • Password hashing upgraded to SHA-256 + bcrypt.
    • Atomic refresh token rotation.
    • Passkey improvements (clone detection, scoped deletes, stateless ChallengeStore).
    • Input sanitization, SafeIO package for symlink-safe file operations, Helmet middleware, body size limits.
  • TLS & LiveKit integration — Multi-algorithm self-signed certificate generation (ed25519 / ecdsa / rsa) with renewal and PEM validation, scheduler-driven auto-renewal, new bedrud cert CLI command, automatic TURN/TLS configuration for embedded LiveKit from the server certificate, SAN support, and outbound IP handling.
  • Resource governance — Room participant limits (maxParticipantsLimit), upload quotas with S3 deletion on cleanup, chat message retention policies, persistent rooms (admin-pinned rooms that skip idle/expiry cleanup), and room soft-delete with scoped name uniqueness.
  • CLI — Complete migration from custom flag parsing to Cobra + Viper. New rich subcommands for users, rooms, configuration, settings, invite tokens, database, and certificates. Added --admin flag for direct superadmin creation during bootstrapping. Role parameter support on promote/demote.
  • Frontend performance & UXReact.lazy + Suspense for heavy dependencies (recharts admin chart, react-markdown), extensive meeting room stabilization (memoization, stable refs/handlers/keys to reduce re-renders and fix DOM reuse issues), full conversion of meeting room to Tailwind CSS, ErrorBoundaries, accessibility improvements (RTL logical CSS properties, ARIA attributes, skip links, reduced motion, focus management), and a new DisconnectedOverlay with timeout and manual recovery.
  • Internationalization — Initial react-intl + IntlProvider setup in the web app with string extraction for auth and error pages. Comprehensive documentation updates and new guides across all 10 supported locales.
  • Meeting experience — Disconnected overlay with 30s timeout + retry/leave, focus trap, secure context banner, chat clustering and key stability fixes, elapsed time display, push-to-talk microphone state restoration, and proper AudioContext cleanup on mobile.

Backend & API

New Features & Subsystems

  • Recording subsystem (bootstrap wiring, configuration, cascade cleanup on soft-delete, Swagger updates).
  • Outbound webhook dispatch with HMAC-SHA256 signatures for room events.
  • Email verification (POST endpoint with JSON response and auto-login, canonicalization, cooldown, audit trail, admin settings tab).
  • Structured ApiError responses and hydrated auth success payloads.
  • Health (/health) and readiness (/ready) check endpoints.
  • Admin TLS certificate info, startup validation, and daily expiry checks via scheduler.
  • Room soft-delete, suspend endpoint, persistent rooms, capacity enforcement (atomic join), and bulk admin operations.
  • Admin user deletion (async 3-phase), force-logout, and set-password endpoints.

Security & Platform Hardening

  • Configurable rate limiting with YAML/env support and tests.
  • In-memory banned user cache and middleware guards.
  • Password hashing upgrade (SHA-256 + bcrypt) and related infrastructure.
  • Atomic refresh token rotation (UpdateRefreshTokenAtomic).
  • Passkey clone detection, scoped deletion, and migration to in-memory ChallengeStore.
  • OAuth and passkey signup flow hardening.
  • SafeIO package providing symlink-guarded file operations (adopted for TLS and logging).
  • API hardening with Helmet middleware, request body limits, and auth/guest rate limiting.
  • SQLite optimizations (WAL mode, foreign key constraints) and model type fixes.

Operations & CLI

  • Full migration of the CLI entrypoint to Cobra + Viper command structure.
  • New subcommands: user (create with --admin, promote/demote with role, delete, set-password), room, config, settings, invite-token, db, cert.
  • Improved flag parsing, syntax consistency (--config placement), and cross-compile fixes.
  • Go version updated to 1.26 across manifests; Cobra/Viper promoted to direct dependencies.
  • Scheduler enhancements: guest cleanup, idle room deactivation, periodic token cleanup, and certificate auto-renewal.

Testing & Documentation

  • Added integration tests, negative authorization tests, and room CRUD/participant/transactional tests.
  • Multiple Swagger documentation regenerations for new endpoints (verify, recording, webhook, email verification, health, cert, etc.).

Admin Panel & Dashboard

  • Major architectural refactor into tabbed settings (email, webhook, TLS, etc.), queue health dashboard with live events log, and overview widgets.
  • Introduced reusable DataTable components with search, pagination, faceted filters, and bulk actions.
  • Confirmation dialogs (AlertConfirmDialog) for all destructive admin actions (ban, promote, kick, bulk operations).
  • Proper error state handling: banners + retry buttons on admin queries; onError toasts on mutations.
  • Role badges (admin/moderator) and Guest account indicators in user tables, with direct links to detail pages.
  • TLS certificate status card and indicator in dashboard and settings.
  • Significant component extraction and dead code removal (deleted ~539 lines of legacy UserTable/RoomTable in favor of RoomCard + PasskeyButton).
  • Improved loading and error UX across admin routes (replaced beforeLoad with loader-based server-confirmed admin checks).

Web Frontend (React + TanStack Start)

Internationalization

  • Installed react-intl and added IntlProvider wiring.
  • Initial string extraction for authentication and error pages.

Performance

  • Dynamic imports via React.lazy + Suspense for recharts (admin overview chart) and react-markdown.
  • Extensive memoization, stable callback refs, and data-attribute usage in meeting components to reduce unnecessary re-renders.
  • Stable keys for chat display items (clusters, separators, system messages) to prevent React DOM reuse bugs on new messages.

Meeting Room

  • Complete conversion from inline styles to Tailwind CSS classes.
  • Added ErrorBoundary wrappers.
  • New DisconnectedOverlay component with spinner, 30-second timeout, and manual retry/leave actions.
  • Focus trap and secure context warning banner.
  • Chat refinements and performance fixes.
  • Elapsed meeting time display (removed unused LIVE badge).
  • Proper cleanup of AudioContext on mobile and restoration of mic/PTT state on unmount.
  • Unmount-safe async state updates in auth routes and meeting components.

Accessibility & UX

  • Widespread accessibility improvements: logical CSS properties for RTL support, ARIA attributes on buttons, type="button" where appropriate, skip links, reduced motion preferences, aria-live regions, and icon labeling.
  • Polished authentication flow, dashboard layout, home page, user settings, and video preferences (webcam mirror toggle).
  • Added forgot/reset password flow.
  • New catch-all 404 route (routes/$.tsx) using ErrorPage component.

Build & Components

  • Updated build configuration for Bun runtime and improved vendor chunk splitting.
  • Added PWA manifest with icons, screenshots, and description.
  • Added new shadcn/ui components and ErrorBoundary infrastructure.
  • Removed unused props and cleaned up component APIs.

Documentation & Internationalization (Site)

Extensive updates across all 10 locales (en, de, fr, es, zh, ja, tr, fa, ar, ru):

  • Architecture, API authentication, backend, and configuration documentation.
  • New "Roles" guide.
  • TLS improvements (multi-algorithm certificates, auto-configuration with LiveKit, SAN support, renewal, distribution, and internal guides).
  • Resource governance features (room limits, upload quotas, chat retention).
  • CLI reference documentation (new --admin flag and subcommands).
  • Health and readiness checks, behind-proxy deployment guide.
  • New blog post: "ed25519-self-signed-certs" (all 10 locales).
  • Agent skills documentation (AGENTS.md) and repository guide updates covering the queue system, admin panel, lkutil, services, ChatUpload, and frontend conventions.
  • Sidebar and i18n key synchronization.

Desktop App (Rust + Slint)

  • Fixed audio device enumeration (correct device name and ID extraction).
  • Migrated to keyring-core crate with proper native store initialization.
  • Cleaned up desktop authentication UI (removed redundant error label padding).
  • Dependency group bumps via Dependabot (cargo-all).

Android App

  • Multiple Gradle dependency group updates.
  • Added internationalization / localization support (initial translations and resource handling).
  • Lint fixes for translatable resources.

Dependencies & Tooling

  • Numerous Dependabot updates across:
    • Go modules (server)
    • Cargo (desktop)
    • Gradle (Android)
    • GitHub Actions
  • Go version bumps to 1.26 in multiple locations.
  • Promo...
Read more

Nightly 20260531

31 May 03:34

Choose a tag to compare

Nightly 20260531 Pre-release
Pre-release

Nightly Build

Automated nightly build from master at 360e2dc.

Changes

  • fix types, clean up imports, and switch react-markdown to direct import (360e2dc)
  • remove inline admin mutations for shared DataTable approach (1910b99)
  • add E2EE architecture docs across 10 locales (45bddfb)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:nightly-20260531

This is an automated pre-release. Use tagged releases for production.

Dev 360e2dc

30 May 07:08

Choose a tag to compare

Dev 360e2dc Pre-release
Pre-release

Dev Build

Built from 360e2dc.

Changes

  • fix types, clean up imports, and switch react-markdown to direct import (360e2dc)
  • remove inline admin mutations for shared DataTable approach (1910b99)
  • add E2EE architecture docs across 10 locales (45bddfb)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:dev-360e2dc

This is an automated pre-release. Use tagged releases for production.

Nightly 20260530

30 May 02:51

Choose a tag to compare

Nightly 20260530 Pre-release
Pre-release

Nightly Build

Automated nightly build from master at eceae68.

Changes

  • rename api-refrence to api-reference (eceae68)
  • Improve site (#19) (bf0b2c2)
  • update AdminUser(3x)/AdminRoom(2x) + extract ProviderBadge/Alert to shared for DRY (0419156)
  • dynamically import recharts (overview chart) and react-markdown using React.lazy + Suspense to reduce initial bundle size (64b4a36)
  • expose intermediate roles (admin/moderator) in admin users list via role badges and manage links to detail page (d283b25)
  • add width and height attributes to lazy-loaded chat images from attachment metadata (594fb58)
  • install react-intl + initial i18n setup with IntlProvider and string extraction (auth + error pages) (315adcb)
  • add clarifying comment in ParticipantGrid explaining why no empty state (useParticipants always includes local user) (d8e0f5a)
  • memoize dynamic styles and use data-* + stable handlers in meeting components (reduces re-renders in ParticipantTile) (1993717)
  • stabilize markRead reference in MeetingChatContext using refs for lengths (prevents unnecessary re-renders on every message) (66f296c)
  • use stable keys for DisplayItems in chat (first msg ID for clusters, counters for separators/system) to fix React DOM reuse on new messages (0cb3c25)
  • delete dead UserTable/RoomTable (539 lines); wire reusable RoomCard + PasskeyButton (945732d)
  • add routes/$.tsx catch-all 404 route using ErrorPage variant='not-found' (1f07a38)
  • add DisconnectedOverlay with spinner, 30s timeout, and manual retry/leave on connection loss (981472c)
  • add isError handling with error banner + retry button on admin queries (prevents empty/skeleton forever on failure) (867a079)
  • add confirmation dialogs for destructive admin actions (ban/promote/kick + bulk) using AlertConfirmDialog (54d8826)
  • add closeCtx() and call it from MeetingSoundEffects cleanup (prevents long-lived AudioContext on mobile) (6d47692)
  • restore mic state in ControlsBar PTT cleanup on unmount (fixes stuck mic when Space held + leave meeting) (81bf97c)
  • replace admin beforeLoad with loader for server-confirmed admin check (prevents non-admin flash) (61ede32)
  • show error message in OAuth callback before redirecting to login (27c2fa0)
  • add onError handlers to admin rooms and users mutations for error toasts (8f17e0a)
  • improve pervasive accessibility: focus, contrast, skip link, reduced motion, aria-live, icon labels (2d3ba56)
  • update .tsx files to logical CSS properties for RTL support (e582b7e)
  • update AudioProcessorManager deps for correct attach-on-connect intent (0d8a631)
  • update auth routes and meeting components for unmount-safe async state updates (6ebad81)
  • update password placeholders for accurate validation hint (b444239)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:nightly-20260530

This is an automated pre-release. Use tagged releases for production.

Dev eceae68

29 May 21:10

Choose a tag to compare

Dev eceae68 Pre-release
Pre-release

Dev Build

Built from eceae68.

Changes

  • rename api-refrence to api-reference (eceae68)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:dev-eceae68

This is an automated pre-release. Use tagged releases for production.

Dev bf0b2c2

29 May 21:01
bf0b2c2

Choose a tag to compare

Dev bf0b2c2 Pre-release
Pre-release

Dev Build

Built from bf0b2c2.

Changes

  • Improve site (#19) (bf0b2c2)
  • update AdminUser(3x)/AdminRoom(2x) + extract ProviderBadge/Alert to shared for DRY (0419156)

Artifacts

Platform Asset
Linux x86_64 bedrud_linux_amd64.tar.xz
Linux ARM64 bedrud_linux_arm64.tar.xz
macOS x86_64 bedrud_darwin_amd64.tar.xz
macOS ARM64 bedrud_darwin_arm64.tar.xz
Android (universal) bedrud-android-universal-debug.apk
Android arm64-v8a bedrud-android-arm64-v8a-debug.apk
Android armeabi-v7a bedrud-android-armeabi-v7a-debug.apk
Android x86_64 bedrud-android-x86_64-debug.apk
Desktop Linux x86_64 bedrud-desktop-linux-x86_64.tar.xz
Desktop Linux ARM64 bedrud-desktop-linux-arm64.tar.xz
Desktop Windows x86_64 bedrud-desktop-windows-x86_64.zip
Desktop Windows ARM64 bedrud-desktop-windows-arm64.zip
Web bedrud-web.tar.xz
Docker ghcr.io/themadorg/bedrud:dev-bf0b2c2

This is an automated pre-release. Use tagged releases for production.