Prepare ColorCraft for dashboard discovery#7
Merged
Conversation
Artsen
marked this pull request as ready for review
July 25, 2026 16:15
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
Completes ColorCraft's dashboard-readiness pass as a focused local-first product update.
/metadata, health/readiness endpoints, capability slugs, and launcher URL output.tmp, and commits a small curated documentation setPersistence and privacy
Palette records are stored only in the current browser's IndexedDB. LocalStorage remains limited to theme preference. Image-derived records retain source type/name and extracted color metadata, but not source image bytes. Uploaded image data remains request/session scoped and is not written to disk or persistent browser storage by ColorCraft. Clearing site data removes saved palettes.
Stored schema version:
1. Version-0/unversioned records migrate on read; malformed records and unknown future versions are ignored without breaking Library startup.Dashboard discovery
Static defaults:
http://127.0.0.1:5174http://127.0.0.1:4100app-manifest.jsonRuntime consumers can resolve overrides from
GET /metadata;GET /readyexposes the same capability slugs when ready.Validation
backend/.venv311/Scripts/python.exe check.pyCoexistence check
Ran Web Video Optimizer and ColorCraft simultaneously and received HTTP 200 responses from both stacks:
5173/40005174/4100The applications retain a related local-utility shell grammar while ColorCraft keeps its own mark, palette workflow, navigation, and accent treatment.
Review notes
The new formatter/linter gates normalize existing frontend and backend source alongside the functional changes, so the diff includes repository-wide mechanical formatting in addition to the persistence, manifest, testing, and documentation work.