Skip to content

Show engine#5

Merged
Arian-Ott merged 3 commits intomasterfrom
show-engine
Dec 29, 2025
Merged

Show engine#5
Arian-Ott merged 3 commits intomasterfrom
show-engine

Conversation

@Arian-Ott
Copy link
Copy Markdown
Owner

This pull request introduces several significant backend and frontend improvements, focusing on expanding show and scene management features, refactoring database models for better normalization, and adding new API endpoints. Additionally, it includes some project configuration and documentation updates. The changes are grouped below by theme.

Backend: Show and Scene Management Enhancements

  • Added new API endpoints in show.py for listing shows, retrieving patching information, creating scenes, and associating fixture values with scenes. These endpoints support pagination, scene creation, and fixture assignment workflows.
  • Implemented corresponding service methods in shows.py to fetch showfiles with pagination, retrieve patching info, create scenes, and add fixture values to scenes using normalized SQL models.
  • Introduced new Pydantic schemas in show.py for showfile queries, scene creation, and fixture association, supporting the new endpoints and data structures.

Backend: Database Model Refactoring and Improvements

  • Refactored the Scene model in dmx/scenes.py to use a normalized SQL structure, introducing a new SceneFixtureValue table to store individual fixture attribute values per scene instead of a JSON blob. Added relationships for better ORM usage.
  • Updated Cue, EffectTemplate, and CueEffect models to use uuid.uuid7 for primary keys, adjusted types (e.g., cue numbers now integers), and removed/modified some unused or legacy fields for clarity and maintainability. [1] [2] [3]

Backend: Fixture and Device API Enhancements

  • Added a new endpoint to retrieve all fixture types, requiring operator-level access, and implemented the corresponding service method. [1] [2]
  • Improved router imports and access control for fixture and show endpoints, ensuring proper role-based access. [1] [2]

Backend: Infrastructure and Licensing

  • Added GPLv3 license headers to several backend files for open-source compliance.
  • Updated FastAPI lifespan handling to move startup logic into the lifespan context manager, simplifying event handling. [1] [2]

Frontend and Documentation

  • Switched frontend stack from React/TypeScript/Vite to Svelte, updating the README.md and .gitignore accordingly for Svelte conventions. [1] [2]
  • Added engine-strict=true to .npmrc to enforce strict engine compatibility for frontend dependencies.
  • Added a new NOTES.md file documenting the development and play mode processes for the project.

…dpoints

Signed-off-by: Arian-Ott <88984301+Arian-Ott@users.noreply.github.com>
Signed-off-by: Arian-Ott <88984301+Arian-Ott@users.noreply.github.com>
- Removed React components and assets including App.tsx, App.css, and logos.
- Added SvelteKit structure with new layout and page components.
- Introduced favicon and updated index configuration for Svelte.
- Set up SvelteKit adapter and Vite configuration.
- Created TypeScript definitions and updated TypeScript configuration.
- Added robots.txt for SEO and accessibility.

Signed-off-by: Arian-Ott <88984301+Arian-Ott@users.noreply.github.com>
@Arian-Ott Arian-Ott merged commit 493f521 into master Dec 29, 2025
@Arian-Ott Arian-Ott deleted the show-engine branch December 29, 2025 15:51
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