Skip to main content

Generate pixel graphics for the Tidbyt

Project description

Indiepixel

Contributions more than welcome!

Basically… pixlet in Python.

Why?

This is an example for generating images for the Tidbyt device, a nice LED display. The company that made the Tidbyt got acquihired and won't be developing the software much in the future.

Pixlet was very convenient, but is an oddball for a tech stack: implemented in Go for people to consume in Starlark. Starlark is a niche language. It'd be nice to support a mainstream language.

This is a WIP implementation of the same concepts as pixlet in Python.

Development

Environment setup

First make sure you have uv installed.

Install dependencies with:

uv sync

Install pre-commit hooks:

uv run pre-commit install

Running examples

To run examples/kitchen_sink.py:

uv run examples/kitchen_sink.py

Running tests

uv run pytest

Linting and formatting

uv run pre-commit run --all-files

Or run ruff directly

uv run ruff check
uv run ruff format --check

Status

  • WebP generation
  • Rendering the tb-8 pixel font without anti-aliasing
  • Components
    • Text
    • Box
    • Rect
    • Column
    • Row
    • Animation
    • Image
      • Resizing
      • Animation
    • PieChart
    • Plot
    • 'expand' option
    • WrappedText
  • Fonts

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

indiepixel-0.1.0.tar.gz (265.1 kB view details)

Uploaded Source

Built Distribution

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

indiepixel-0.1.0-py3-none-any.whl (260.0 kB view details)

Uploaded Python 3

File details

Details for the file indiepixel-0.1.0.tar.gz.

File metadata

  • Download URL: indiepixel-0.1.0.tar.gz
  • Upload date:
  • Size: 265.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.7

File hashes

Hashes for indiepixel-0.1.0.tar.gz
Algorithm Hash digest
SHA256 403ee8966fd018c8993d0cd54126088dc48350399083b8886db81e09549d6440
MD5 9d7616e539e3c421af1a1d42cb5e2d47
BLAKE2b-256 8696be546a854fe180ae76f150e7f3d7958b5feeae862d9bc6f339a43fa7127c

See more details on using hashes here.

File details

Details for the file indiepixel-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: indiepixel-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 260.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.7

File hashes

Hashes for indiepixel-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8edfad9e8c202af0e3a1f9be4b5c04c1a0beb5ecb01a2221a9a8168ac2a2494d
MD5 6aef22cb0a4b51b34c9e267b9b528d50
BLAKE2b-256 b1e600a443f57008783b9b4128c178d0c71cb63858b65579fb5add1fdbe09f9d

See more details on using hashes here.

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