Skip to content

System Requirements

Kaden Keep edited this page Oct 1, 2026 · 1 revision

Demo 1

As this is an existing project, most of our first work is reworking and improving architecture.

  • Separate out Master Server, Action Server, and Electron App
    • Currently these all run intermingled and on the same electron process. Separating them provides a more robust and dynamic system
  • Restoring and confirming all previous functionality after the core architecture rework
    • Installable app that allows a user to customize and create Macros
    • Mobile client connection capability to allow a user to control their host computer remotely using macros
  • Critical Actions to be functioning:
    • Terminal Command
    • App Launch
    • Send Notification

Demo 2

  • All existing macros should be fully functional across all platforms
  • Dynamic/stateful macros infrastructure implemented (e.g. Volume slider, toggling mute icon, CPU usage indicator, etc)
  • Local network security - optional sign in or token based access
  • Convenience features implemented
    • On-host macropad for testing purposes
    • Start on boot
    • Continue when closed/quit on close
    • Panel icon capability

Demo 3

  • Implement Plugin capabilities
  • More macro actions, especially dynamic macros
  • Better Macro UI
    • Draggable macros on the edit screen
    • Resizable macros
    • GIF icons on macros

Stretch Goals

  • Smart home controls (Matter or HomeAssistant plugin)
  • Installer that allows installing as a standalone (existing method embedded in electron) or as a server-based install (no electron, pure web UI, only background processes)
  • Remote server capabilities
    • Host a master server on a homelab
    • Action servers on all devices that are controllable

Not in scope

  • No Online capabilities - This is purely a local network application
    • Must be on the same network for control
    • No cloud saving/syncing of setup
  • Native app - web browser remote control system only
  • No Firefox support

Clone this wiki locally