dangreco / threedy

Home Assistant card to display 3D printer status and progress
198 stars 46 forks source link
3d-printing homeassistant homeassistant-components octoprint react

IMPORTANT: threedy v2.0

I am currently working on a rewrite for this card with preact instead of react.

This will yield a lighter-weight card. I will also be tackling the bugs opened as issues in this rewrite -- using TypeScript from the get-go will help this (versus when I switched mid-development). Thank you for your support and patience!!!

View the development branch for threedy v2.0 here!




threedy

Home Asssistant card for 3D printers (via OctoPrint integration)

Featured

Buy Me A Coffee

Table of Contents

Features


Prerequisites


Installation


Method 1: HACS

  1. Open HACS and navigate to Frontend Section
  2. Open the Overflow Menu (⋮) in the top right corner and click on Custom repositories
  3. Paste https://github.com/dangreco/threedy into the input field and select Lovelace from the dropdown
  4. Click the Install Button on the highlighted Card titled threedy

Method 2: Manual

  1. Download threedy-card.js from the releases section.
  2. Either:
    • Move to the www folder of your Home Assistant instance
    • Or copy the ffle's contents via the file editor.
  3. In the Resources section of Lovelace (Configuration -> Lovelace Dashboards -> Resources), add /local/threedy-card.js as a JavaScript Module.
  4. Save
  5. Add a manual card to your lovelace dashboard using the configuration instructions below.
  6. Restart Server management
  7. Reload Browser

Config


Graphical (Recommended)

graphical

Manual

Required

Optional

Example Config


# required
type: 'custom:threedy-card'
base_entity: 'sensor.ender_3_v2'
name: 'Ender 3 v2'
printer_type: I3
monitored:
  - Status
  - ETA
  - Elapsed
  - Remaining
  - Hotend
  - Bed
# optionals  
theme: 'Default'
font: 'Roboto'
scale: 1.0
round: false 

Custom Theming


Custom theming can be accomplished using lovelace-card-mod's mod-card. Some styles may require the css keyword !important to override the inline style. Example usage as follows:

type: 'custom:mod-card'
style: |
  threedy-card > div {
    box-shadow: none !important;
  }
card:
  type: 'custom:threedy-card'
    .
    .
    .
    <card config>

Screenshots


Active Print

Active

Idle

Idle

Printer Offline

Offline

Show/Hide Animation

ShowHide