vycdev / vycdev/Kromacut

Add a shared filament library used by auto-paint profiles

Open
#53 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
278
Forks
31
Avg merge
13h 32m
Merged PRs (30d)
4

Description

Kromacut could move toward a shared filament library instead of keeping filaments only inside individual auto-paint profiles.

Today, profiles behave like self-contained filament sets. A more flexible model would let users save filaments once, then build multiple profiles that reference those saved filaments.

Example model:

  • A filament library contains reusable filament entries.
  • A profile contains references to multiple filaments from that library.
  • Multiple profiles can reference the same filament.
  • Updating a shared filament could optionally affect every profile that uses it, depending on the final UX design.

Why this matters:
Users may reuse the same real spools across many auto-paint profiles. Duplicating filament data across profiles makes it easier for names, colors, TD values, or calibration data to drift out of sync. A shared library would make filament management feel more like managing actual materials.

Areas that need planning:

  • UI for managing the global filament list.
  • UI for adding/removing library filaments from a profile.
  • How profiles display referenced filaments.
  • How edits to a shared filament affect existing profiles.
  • How to handle copying/forking a filament for one profile only.
  • Migration from existing saved profiles.
  • Import/export behavior for profiles and filament libraries.
  • Backward compatibility with existing .kapp / .kfil / JSON files.
  • How this interacts with calibration data and future project files.

Desired outcome:
Users can maintain one reusable list of filaments and assemble profiles from that list, instead of duplicating the same filament data across multiple profiles.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by mapping where profiles and filament data are stored, edited, imported, and exported, then document the migration and sharing behavior before implementation. Done means reusable library filaments can be referenced by multiple profiles without breaking existing files.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
full-stack
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.