Skip to main content

inkBoard designer bridges the gaps between designing an inkBoard dashboard and deploying it to a platform, without being tied down by the platform's limitations.

Project description

inkBoard Designer Logo

inkBoard Designer is meant to help designing inkBoard dashboards. While working on the software, it could be rather cumbersome trying to test code or dashboards on the platform itself. The designer provides an emulator, so it allows using the same yaml config as you'd use on device within it (as opposed to when you'd run it on the desktop platform). The interface is also meant to aid some steps in the design/install process.

For example, to keep the inkBoard package itself at a minimum, the platforms and integrations will be distributed along with the designer. However, it allows for creating packages of the running configuration, which can easily be installed in an inkBoard installation using inkBoard install.

Installation

pip install inkBoarddesigner

Usage

The command to run the designer is included in inkBoard itself, as well as some other hooks into it. It can be started by running inkBoard designer. Optionally, provide a configuration file to run, but that is not required. They can also be opened from the UI.

While I work on the documentation, the UI will likely be one of the last things to be written. For the moment, each widget has tooltips attached which should hopefully explain what they do adequately.

Getting Started

Currently, two examples are included in the example folder. They are a good way to get started, and comments are included in the files to help explain what certain lines do. If you want to download just the example, you can do so via i.e. here: https://downgit.github.io/#/home

In the examples/custom/integrations folder, the dummy_integration is also included. This is a template/explanatory integration, with comments to somewhat explain what functions are required, what stuff does, etc. It can be included by using the dummy_integration entry in your config. Aside from that, the custom folder also includes examples for custom functions and custom elements, which are used by the example configurations as well.

For the Home Assistant example, you should fill out the ha_substitutions.yaml file. It currently all references to secrets.yaml (via the !secret anchor), but they can also be put in the file directly. To run the integration, you should run inkBoard install integration homeassistant_client first, which takes care of downloading the appropriate requirements (the websockets and requests packages.)

Running the examples can be done by selecting the yaml file from the designer ui, or running inkBoard designer configuration.yaml from the examples folder.

Acknowledgements

This project has been a labour of love (and sometimes hate), and I could not have done this without these projects:

  • The ESPHome project, which is where the idea for an E-Ink based dashboard was born for me.
  • The Home Assistant project, as it got me started with this obsession, and has inspired multiple aspects of the architecture.
  • The original PythonScreenStackManager by Mavireck, as it is the basis inkBoard was build on. Aside from providing the means to print stuff onto Kobo screens, it also provided the idea for an emulator
  • FBInk and adjacent kobo packages by NileJule, for the kobostuff package, FBInk, and probably a lot more.
  • The https://www.mobileread.com community as a whole, as they provided a whole lot of resources.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inkboarddesigner-0.3.0.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inkBoarddesigner-0.3.0-py3-none-any.whl (7.8 MB view details)

Uploaded Python 3

File details

Details for the file inkboarddesigner-0.3.0.tar.gz.

File metadata

  • Download URL: inkboarddesigner-0.3.0.tar.gz
  • Upload date:
  • Size: 7.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for inkboarddesigner-0.3.0.tar.gz
Algorithm Hash digest
SHA256 5f7757f1cb26f0402315ea5af30ecee5e1c11010be06d29433cc843f8c4aff9f
MD5 e522ea6e9c5638675ca9d0454dee7eca
BLAKE2b-256 7b18acb686977c7e48dc835a92cb6983bbda2a1faa4f867a7ee6a70dd75bb0bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkboarddesigner-0.3.0.tar.gz:

Publisher: publish.yml on Slalamander/inkBoarddesigner

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkBoarddesigner-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for inkBoarddesigner-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6ea3e89c4772a69d5fde7ada8ce2827371a445dc0a9a9ec943e8ba642f1bc1a
MD5 7ba83978f8be739106db9d7d4af6f74b
BLAKE2b-256 d9df60eeb82d07309dbefee7989ab9d595d9bd491aa4125811c051131dd616b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkBoarddesigner-0.3.0-py3-none-any.whl:

Publisher: publish.yml on Slalamander/inkBoarddesigner

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page