Skip to content

Improve macro edit form UX and styling #24

@mickmister

Description

@mickmister

At the moment, the experience of configuring midi macros is clunky and unintuitive. The task here is to readjust the UI styling and possibly rethink the UX flow of setting up and using macros.

UI components related to configuring macros are all defined throughout the files in this folder. Essentially any.tsx file there
https://github.com/jamtools/jamtools/tree/main/packages/jamtools/core/modules/macro_module/macro_handlers

Any existing styling done in those components is done through style attributes, partially due to previous lack of support for including css in the webapp bundle.


All macros instantiated by all modules are currently shown on the centralized page http://localhost:1337/modules/macro. Specifically that page renders all edit components for all created macros.

Modules can also display these on their own pages via accessing the given macro's exported edit and show components like so:

https://github.com/jamtools/jamtools/blob/30aba0e40d489d30ad2d11d1ad8afcc98da9fd75/packages/jamtools/features/modules/dashboards/keytar_and_foot_dashboard/single_octave_root_mode_supervisor.tsx#L276-L279

The eventual plan is to have the components for these macros shown on the module's page itself, without the module needing to manually render those. The framework will take care of organizing those instead. This will be more relevant when the snack system is implemented. This piece is out of scope for this task, though just explaining this for context of where these components will eventually be shown automatically.


The task here is to:

  • Try out configuring a macro as a user
  • Take note of the clunky process
  • Consider and discuss any functional improvements
  • Consider and discuss any styling improvements

After discussing this, we can decide the desired result and determine what code needs to change

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions