Skip to content

UI Maintenance#41

Merged
officialMECH merged 38 commits intostaging/maintenancefrom
chore/ui-rewrites
Feb 19, 2026
Merged

UI Maintenance#41
officialMECH merged 38 commits intostaging/maintenancefrom
chore/ui-rewrites

Conversation

@officialMECH
Copy link
Copy Markdown

@officialMECH officialMECH commented Feb 19, 2026

This PR integrates many focused changes across the app for various bugfixes / oversights with the initial wave of UI refactors introduced in 0.4.

Technical Changes

  • A new combobox component was added to address form fields that would benefit from custom value entry (like environment pickers)
  • New hooks were integrated to provide more flexibility when working with polymorphic components and composable primitives.
  • All recipes (and simple patterns) are now bundled directly into the styled-system preset for better portability.
  • The prompt system has been reworked with a more declarative API to provide less maintenance burden.
  • ARIA labels are now used in favor of data attributes for conditional styles.
  • New meta tags for titles have been integrated across various routes to better illustrate the context of the current page.
  • Integrated new devtools pipeline (based on TanStack Devtools) for ease of future development.

Notable Bugfixes

  • All docs pages that feature SVG elements will no longer show scanlines in dark mode.
  • Pointer events for color notes will now fire as intended when clicking directly on the arrow mesh.
  • The bloom effect has been tweaked to more closely align with the active color scheme.
  • The waveform visualizer no longer renders an opaque background with the translucency filter.

@officialMECH officialMECH added this to the 0.4.5 milestone Feb 19, 2026
@officialMECH officialMECH merged commit fdb1be2 into staging/maintenance Feb 19, 2026
2 checks passed
@officialMECH officialMECH deleted the chore/ui-rewrites branch February 19, 2026 18:58
@officialMECH officialMECH added this to the 0.5.0 milestone Mar 22, 2026
@officialMECH officialMECH mentioned this pull request Mar 22, 2026
officialMECH added a commit that referenced this pull request Mar 26, 2026
* supply fallback for unsupported color schemes

* fix initial state resolution for undoable reducers

* improve faulty logic for clipboard reducer

* better handling for custom color schemes

* data integrity fixes for file service

* fix sync issues for audio service

* ensure url is source of truth for route context

* UI Maintenance (#41)

* extrapolate color palette types from styled system

* make list collection compositions more flexible

* break up common atomic ui patterns into hooks

* clean up configs for styled system

* move data attributes to aria labels

* add new patterns for styled wrapper components

* move recipes to styled system preset

* add escape hatch for polymorphic components

* improve atomic components for new rendering patterns

* new prompt api for better portability

* refactor mdx components

* fix render logic for polymorphic components

* upgrade compositions for atomic ui components

* better apis for local file compositions

* relocate shortcut components to more intuitive scopes

* make app layout exports more consistent

* simplify composition for editor action panel

* compose new layouts for editor ui templates

* small fixes for atomic ui components

* refactors for shared component hooks

* organize event grid template into composable layout

* organize app forms and fix related components

* fix bindings for field components

* small fixes for icon components

* organize (and fix) docs components

* clean up atomic scene components

* move logic for track mover to dedicated hook

* break off light spring into a standalone hook

* new composable layout for beat markers

* new composable layout for beatmap visualization

* improve prop forwarding for note components

* refactor compositions for environment templates

* more clean up for app/scene components

* update context and meta tags for nested routes

* various fixes for style consistency

* update ui dependencies

* add tanstack devtools suite

* fixes for regressions with deps updates

* refactor setup references to lazy singletons

* expose setup accessors to components via context

* move rest of basic event logic to template

* move backup worker to services (since it's not really a worker)

* fold sfx service into audio service

* fix visibility flow for action panel

* refactor event grid logic to state machine

* rework logic/state for placement grid

* vendor new serialization factory api

* improve types and helpers for grid object visualization

* decouple track resolution logic for basic events

* share logic across beatmap entity slices

* align packaging helpers with serialization factory

* fix visualization behavior for light effects

* improve support for basic transition events

* fix closures for event selection box controls

* unify references for basic event entity adapter

* fix theme resolution for docs site

* fix direction resolver logic for placement grid

* move song accessors back into entity adapter

* clean up logic for beatmap filestore updates

* various fixes for audio middleware and related actions

* decouple map conversion logic from filestore

* add standalone map converter

* more bugfixes for ui regressions

* add support for inline note rotations in preview

* many improvements to color representation logic

* ensure correct ids for composed data fields

* new layout for details page

* add support for modifying vanilla color scheme overrides

* allow hex color entry for color picker

* improve laser rotation algorithm

* various fixes for navigation logic

* small improvements for app forms and dialogs

* fix regression for jump preview calculation

* add support for track visibility filters

* Color Boost Events (#42)

* add basic support for boost events

* apply color boost to light state resolution

* integrate color boost in event preview

* integrate gradients for event color toggle groups

* add docs + changeset

* make timeline more deterministic for background boxes

* last minute bugfixes for critical oversights + test cases

* Free Obstacle Placement (#43)

* split object placement modes by entity type

* support for modern obstacle placement controls

* add new fields for custom grid offsets

* support for visual obstacle placement controls

* add docs + changeset

* add visual demo of free obstacle placement for user manual

* improve closures for beatmap select groups

* drop alpha support for hex color conversions

* limit create map form to required fields

* add audio preview component

* improvements to song action forms

* ensure prompts disable background interactions

* migrate to upstream bsmap changes

* integrate new track definition logic and references

* improve formatting for note jump stats

* don't defer visualizer updates to prevent desync

* prefill combobox when custom values are used

* prevent flex shrink for file upload image previews

* prefill base environment for v4 map imports

* better closures and fallbacks for song creation flows

* last batch of refinements for app forms

* apply changesets for upcoming release

* update docs for latest changeset

* prevent numeric fields from invalidating decimals

* more file upload improvements for song workflows

* add manual override for duplicate song resolution

* clean up type definitions and fix stale references

* fix raycast target regressions for placement grid

* expand test suite for various helper functions

* more fixes from integration tests & clean up

* more improvements for vanilla color schemes

* pre-release clean up

* upgrade dependencies and workflows to latest targets

* break off audio/playback logic into dedicated middleware

* integrate basic support for vanilla bpm changes

* apply proper timescale for bookmarks

* normalize timescale for jump measurements in preview view

* final batch of updates before release

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant