-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Spoolman Widget #3959
base: main
Are you sure you want to change the base?
Feature: Spoolman Widget #3959
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/widgets/services/spoolman.md
Outdated
|
||
Keep track of your inventory of 3D-printer filament spools. | ||
Spoolman is a self-hosted web service designed to help you efficiently manage your 3D printer filament spools and monitor their usage. It acts as a centralized database that seamlessly integrates with popular 3D printing software like OctoPrint and Klipper/Moonraker. When connected, it automatically updates spool weights as printing progresses, giving you real-time insights into filament usage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Keep track of your inventory of 3D-printer filament spools. | |
Spoolman is a self-hosted web service designed to help you efficiently manage your 3D printer filament spools and monitor their usage. It acts as a centralized database that seamlessly integrates with popular 3D printing software like OctoPrint and Klipper/Moonraker. When connected, it automatically updates spool weights as printing progresses, giving you real-time insights into filament usage. |
if (spoolData.error || spoolData.message) { | ||
return <Container service={service} error={spoolData?.error ?? spoolData} />; | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (spoolData.length === 0) { | |
return ( | |
<Container service={service}> | |
<Block label="spoolman.noSpools" /> | |
</Container> | |
); | |
} | |
if (spoolData.length > 4) spoolData = spoolData.slice(0, 4); | |
- I would handle the no spools case (need to add entry to common.json)
- We dont allow more than 4 blocks, as noted in the guidelines. So up to you how to handle it, at minimum just slice the 4, or you can change the widget in that case (e.g. show a block with total, some other info, etc)
started incorporating your feedback yesterday. |
Finally again ready for review @shamoon I added an option to filter spools by their id. Spoolman: Config: widget:
type: spoolman
url: https://spoolsman.io
spoolIds:
- 2
- 5 # does not exist, but is allowed Result in homepage: Ps.: |
Proposed change
Adds a Spoolman widget. Each spool will be rendered into a dedicated
<Block>
showing the filament name and remaining filament in %.Widget:
Spoolman:
Closes #3958
Type of change
Checklist: