Skip to content

Releases: usetrmnl/inker

Inker - 0.3.3

16 Apr 21:54

Choose a tag to compare

Inker 0.3.3

Changes:

  • Add emoji and CJK character support in custom widgets (#15)
  • Remove hardcoded 10-item list limit — respects user's maxItems setting (#15)
  • Fix playlist refresh rate stuck at 900s regardless of configured duration (#14)

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.3.3

Inker - 0.3.2

12 Apr 14:13

Choose a tag to compare

Inker 0.3.2

Fixes:

  • Fixed random refresh_rate values causing excessive battery drain on e-ink devices (#14)
  • Fixed custom widget data never refreshing — screens with custom widgets now always render fresh content (#12)
  • Fixed duplicate external API calls when multiple widgets share the same data source (#10)
  • Fixed Prisma migration crash on non-AVX2 hardware (Synology NAS) by using Node.js for migrations (#13)

Changes:

  • Consistent image_url format for all designed screens — removed capture vs render URL branching
  • Only clock widget overrides device refresh rate; date, countdown, and weather no longer force shorter intervals
  • Playlist rotation uses total playlist duration cap instead of per-screen remaining time

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.3.2

Inker - 0.3.1

02 Apr 17:48

Choose a tag to compare

Inker 0.3.1

Changes:

  • Strip HTTP security headers from device API endpoints (prevents ESP32 buffer overflow)
  • Fixed double connecting new device to Inker
  • Blocked device list prevents deleted devices from re-appearing
  • Full e-ink refresh on screen change (prevents ghosting artifacts)

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.3.1

Inker - 0.3.0

26 Mar 22:12

Choose a tag to compare

Inker 0.3.0

Changes:

  • Firmware 1.7.8 full compatibility
  • Data source refresh intervals fixed
  • Plugin system foundation (coming soon — homelab-native integrations)

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.3.0

Inker - 0.2.1.1

15 Mar 20:19

Choose a tag to compare

Inker 0.2.1.1

Fixes:

  • Custom widget previews now use cached data — editing widget settings no longer triggers external API calls
  • Screen renderer uses cached data for custom widgets during save and preview
  • Extensions page no longer auto-tests all data sources on page load

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.2.1.1

Inker - 0.2.1

10 Mar 20:11

Choose a tag to compare

Inker 0.2.1

Welcome Screen Settings

  • Save/load welcome screen config (title, subtitle, auto-create, auto-assign)
  • Live preview and bulk regenerate for all devices

Bug Fixes

  • Deleted devices no longer get stuck in factory reset loops when reconnecting
  • Device preview in browser now shows correct colors (was inverted)
  • Welcome screen settings form loads saved values on open

Security

  • Sensitive headers (Authorization, API keys) are now masked on all API responses — not just list/detail, but also create, update, and refresh
  • Custom widgets never load header data from the database at all
  • Test URL and save correctly unmask headers from DB when editing existing data sources

Cleanup

  • Removed broken "Dynamic Text/Image" feature from text and image widgets (was half-implemented — worked in browser preview but not on devices; custom widgets
    handle this properly)

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.2.1

Inker - 0.2.0

08 Mar 15:50

Choose a tag to compare

Inker 0.2.0

  • BYOD support — Register any e-ink device manually with custom resolution
  • Weather widget city — Interactive map picker, powered by Open-Meteo
  • Canvas zoom — Auto-fit, +/−/fit controls, Ctrl+scroll
  • Alternative device types — Auto-detect dimensions via HTTP_MODEL header
  • Local network data sources — Fetch from Home Assistant, Pi-hole, etc. (toggle in Settings)

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.2.0

Inker - 0.1.0

01 Mar 18:00

Choose a tag to compare

Inker 0.1.0

Self-hosted e-ink device management system for TRMNL displays. Design custom screens with a drag & drop editor, manage playlists, create widgets from external
APIs, and push updates to your e-ink devices — all from a single Docker container.

Quick Start

docker run -d \
  --name inker \
  --restart unless-stopped \
  -p 80:80 \
  -v inker_postgres:/var/lib/postgresql/17/main \
  -v inker_redis:/data \
  -v inker_uploads:/app/uploads \
  wojooo/inker:0.1.0