feat(settings): Applications Framework for Optional Extensible Features#9
Draft
akira69 wants to merge 3 commits intobase/upstream-masterfrom
Draft
feat(settings): Applications Framework for Optional Extensible Features#9akira69 wants to merge 3 commits intobase/upstream-masterfrom
akira69 wants to merge 3 commits intobase/upstream-masterfrom
Conversation
…og UI - Rename spoolman/complex_fields.py to spoolman/applications.py All ComplexField* classes renamed to Application* Added icon and app_key fields to ApplicationDefinition - Add spoolman/demo_applications.py with 8 concept app stubs: Drying Tracker, Inventory Alerts, Print History, Weight Audit, QR Customization, Spool Count, Filament Textures, Storage Conditions - Wire register_demo_applications() into startup in main.py - Rename API endpoints: /field/complex/ to /field/application/ - Rename setting keys: complex_fields_* to applications_* - Add Alembic migration to rename existing setting rows in DB - Frontend: rename ComplexField* types/hooks to Application* in queryFields.ts - Frontend: remove Complex Fields from Settings page (menu + route) - Frontend: add Applications to sidebar navigation (AppstoreOutlined icon) - Frontend: new ApplicationCard compone- Frontend: new ApplicationCard compone- Frontend: new ApplicationCard compone- Frontend: new ApplicationCard compone- Frontend: new ApplicationCa en- Frontend: new ApplicationCard compone- Frontend: new Applicas to applications keys
This was referenced Mar 19, 2026
…emo apps - Move 'applications' i18n keys from settings.applications to top-level - Add status.active/partial/inactive keys for badge text - Add display:flex to Col and Card for uniform card heights - Remove spool_count (already exists as a feature in separate PR) - Remove filament_textures (better implemented as a common extra field) - Add Filament Calibration Profiles app (flow rate, PA, temp tower per filament) - Add Bambu AMS Sync app (auto-sync spool data with AMS unit)
Owner
Author
|
Current implementation status as of 2026-03-23:
What is working locally right now:
Known remaining follow-up:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Introduces the Applications Framework as the foundation for optional, user-configurable extensions in Spoolman.
This PR still represents the framework base:
Since opening this PR, the work has expanded into a fuller successor implementation on:
feat/hosted-applications-framework-workspaceinakira69/Spoolman_LabelsThat successor branch keeps PR #9 as the conceptual and structural foundation, but now proves the framework with real applications and a real runtime surface.
What PR #9 Establishes
Backend
spoolman/applications.pyadds the application registry and catalog modelFrontend
/applicationscatalog page/applications/:appKeydetail pageCurrent Successor Scope
The active successor branch extends this foundation with:
native_surface,hosted_web_app, andexternal_linkapplication kinds/applications/:appKey/run/app-host/<appKey>/Current Proven Applications
The successor branch currently proves the model with two real apps:
1. Filament Swatch
hosted_web_app2. Filament Calibration Profiles
native_surfaceapp with a dedicated native runtimeCurrent Hosted / Native Runtime Status
Verified locally on March 26, 2026 against a temp instance on
http://127.0.0.1:9878:Filament Swatchlaunches in the Spoolman shellFilament Calibration Profilesrenders as a native app in the catalogSmoothBrainIT)Orca-Slicer-Assistant by ItsDeidara)Separate Swatch Adapter Work
The swatch adaptation is intentionally kept out of the Spoolman repo.
Current adapter branch:
spoolman-filament-swatchfeat/spoolman-hosted-modeThat branch currently contains hosted-mode support for:
Why This PR Body Was Updated
The original PR text framed Applications Framework mostly as a rename/reframe of earlier complex-fields work. That is no longer the whole story.
The current architecture direction is:
Filament Swatchproves the hosted-app path.Filament Calibration Profilesproves the native-runtime path.Known Remaining Follow-Up
Test Checklist
/applicationscatalog page loads/applications/:appKeydetail page loadsFilament Swatchlaunches from within the Spoolman shellFilament Calibration Profileslaunches from within the Spoolman shell