Skip to content

Add Discord Rich Presence for desktop #338

Description

@tajemniktv

Summary

Add Discord Rich Presence for the desktop build of TajsOS as an optional integration.

This should be treated as a platform feature, not core app logic. The implementation should reflect TajsOS state cleanly without infecting shared architecture with Discord-specific concerns.

Blocked by

Goals

  • show lightweight, tasteful TajsOS presence in Discord while using the desktop app
  • expose it as an opt-in integration in settings
  • keep presence updates coarse and meaningful rather than noisy
  • model presence through a small app-facing interface so non-desktop platforms can use a no-op implementation

Suggested product behavior

Examples of useful presence states:

  • Planning tasks
  • Writing a note
  • Reviewing protocols
  • In Now
  • In Knowledge
  • In Review

Potential metadata:

  • current screen or lens
  • optional session timestamp
  • small/large app assets if supported

Requirements

  • desktop-first implementation
  • fully optional / user-controllable
  • no hard dependency from shared/common domain logic onto Discord SDK details
  • no web/platform assumptions beyond what is actually supported
  • updates should be event-driven and coarse-grained, not spammy
  • graceful fallback when Discord is unavailable or not running

Technical direction

  • define a small presence abstraction in shared or platform-facing app code
  • provide a desktop implementation and no-op implementations elsewhere
  • keep Discord-specific code isolated behind the desktop/native boundary
  • avoid letting this turn into a broad architecture shortcut for random platform-specific hacks

Acceptance criteria

  • user can enable/disable Discord Rich Presence from settings
  • desktop app can publish meaningful presence state to Discord
  • app remains stable if Discord is not installed/running or integration fails
  • shared architecture stays clean and platform boundaries remain explicit
  • implementation follows the native integration boundary tracked in Introduce native C++ integration boundary for desktop platform features #337

Notes

This issue is intentionally desktop-scoped for now. If Android or iOS support ever becomes viable and worth the complexity, that should be handled later as separate platform work rather than stretching this issue beyond MVP sanity.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    • Status
      Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions