Skip to content

Release history

trala releases

A simple, modern, and dynamic dashboard for your Traefik services.

All releases

26 shown

v0.15.2 Maintenance
Notable features
  • Comprehensive unit tests for configuration package
  • New CI pipeline
Full changelog

🧪 Test-Enablement & Configuration Refactor

What's that? You want more tests? Well, I've got you covered! This release is all about making TraLa more testable and maintainable for the future. The configuration system has been completely refactored to remove global state, and we've added comprehensive unit tests for the config package. Plus, a shiny new CI pipeline now runs tests on every PR. Your dashboard is about to get even more reliable!

What's New

  • Config Refactor: Configuration system refactored to remove global state, making it testable and more maintainable
  • Unit Tests: Added comprehensive unit tests for the configuration package (828 lines of tests!)
  • CI Pipeline: New unit test workflow runs automatically on every PR

How to Use

No configuration changes required. Just pull the latest image!

docker pull ghcr.io/dannybouwers/trala:v0.15.2
# or
docker pull dannybouwers/trala:v0.15.2

What's Changed

  • Lightly refactor config to support tests by @shwoop in https://github.com/dannybouwers/trala/pull/130

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.15.1...v0.15.2

v0.15.1 Maintenance

Minor fixes and improvements.

Full changelog

🧹 Dependency Refresh

Just a quick polish this time! The underlying libraries have been updated to their latest versions, keeping TraLa running smoothly with the newest Go and Node.js tooling. You probably won't notice anything—but that's exactly the point!

What's New

  • Build Update: Node.js v25.8.2v25.9.0
  • Go Update: v1.26.1v1.26.2
  • Dependency Updates:
    • golang.org/x/text: v0.35.0v0.36.0

How to Use

No configuration changes required—just pull the latest image!

docker pull ghcr.io/dannybouwers/trala:v0.15.0
# or
docker pull dannybouwers/trala:v0.15.0

What's Changed

  • chore(deps): update node.js to v25.9.0 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/127
  • chore(deps): update go toolchain to v1.26.2 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/128
  • fix(deps): update module golang.org/x/text to v0.36.0 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/129

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.15.0...v0.15.1

v0.15.0 Security relevant
Notable features
  • Security headers (X-Content-Type-Options, X-Frame-Options, Referrer-Policy)
  • Non-root user container execution
  • Directory listing disabled
v0.14.0 Mixed
Notable features
  • Modular Go packages structure (internal/config, internal/handlers, internal/services, internal/traefik, internal/icons, internal/i18n, internal/models)
  • Frontend JavaScript/CSS extracted to dedicated directories
  • XSS protection via HTML escaping
v0.13.1 Mixed
Notable features
  • Docker Hub added as secondary registry for image distribution
  • Icon URL resolution for services behind redirects
Full changelog

🐳 Dual Registry Publishing & Icon Fix

Ever wanted more flexibility in pulling your TraLa image? Now you can! I've added Docker Hub as a secondary registry alongside GitHub Container Registry, giving you backup options for deployments. Plus, a sneaky bug in icon fetching for redirected services has been squashed.

How to Use

Pull from Docker registry:

services:
  trala:
    # Secondary (Docker Hub)
    image: dannybouwers/trala:latest

The icon fix is automatic - no configuration needed. Services behind redirects will now display their icons correctly.

What's Changed

  • feat: enhance Docker image publishing to include Docker Hub support by @dannybouwers in https://github.com/dannybouwers/trala/pull/79
  • fix(deps): update module golang.org/x/text to v0.33.0 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/80
  • Fix Icon URL Resolution and Manual Services Support by @dannybouwers in https://github.com/dannybouwers/trala/pull/81
  • feat: add Docker Hub description update step in publish workflow by @dannybouwers in https://github.com/dannybouwers/trala/pull/82
  • Update readme by @dannybouwers in https://github.com/dannybouwers/trala/pull/83

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.13.0...v0.13.1

v0.13.0 New feature
Notable features
  • Skip SSL certificate verification for Traefik API connections via `insecure_skip_verify` config option or `TRAEFIK_INSECURE_SKIP_VERIFY` environment variable
Full changelog

🔓 Insecure Connections to Traefik API

Ever been frustrated by SSL certificate errors when connecting to the Traefik API over the Docker network? I've got you covered! With this release, you can now allow insecure connections to the Traefik API, making it easier to use TraLa in environments where redirects to HTTPS are configured on all entrypoints.

How to Use

Update your configuration.yml file to include the new setting:

environment:
  traefik:
    api_host: http://traefik:8080
    enable_basic_auth: true
    insecure_skip_verify: true # Skip SSL certificate verification for Traefik API (default: false)

Or use the environment variable:

services:
  trala:
    image: ghcr.io/dannybouwers/trala:latest
    environment:
      TRAEFIK_INSECURE_SKIP_VERIFY: "true"

What's Changed

  • add support for insecure SSL verification in Traefik API connections by @dannybouwers in https://github.com/dannybouwers/trala/pull/78
  • fix(deps): update module github.com/nicksnyder/go-i18n/v2 to v2.6.1 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/76

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.12.0...v0.13.0

v0.12.0 New feature
Notable features
  • Configurable minimum services per group (default: 2) via min_services_per_group setting or GROUPING_MIN_SERVICES_PER_GROUP environment variable
  • Improved group sizing algorithm for more evenly distributed dashboard organization
Full changelog

🚀 Minimum Services Per Group

Ever felt like a group with just one service is a bit... lonely? Well, now you can set the minimum number of services required to form a group! No more "groups" that are just a single service hanging out by itself. Or, if you prefer, you can now allow single-service groups to form - because sometimes even a solo service deserves its own group!

What's New

  • Configurable Minimum Services Per Group: You can now specify the minimum number of services required for a tag to form a group. By default, it's set to 2, but you can adjust it to your liking.
  • Improved Group Size Algorithm: The grouping algorithm is improved to ensure that groups are more evenly sized, improving the overall organization of your dashboard.

How to Use

Update your configuration.yml file to include the new setting:

environment:
  grouping:
    enabled: true
    columns: 3
    tag_frequency_threshold: 0.9
    min_services_per_group: 2  # Minimum number of services required for a tag to form a group (default: 2)

Or use the environment variable:

services:
  trala:
    image: ghcr.io/dannybouwers/trala:latest
    # ... your existing TraLa configuration ...
    environment:
      GROUPING_MIN_SERVICES_PER_GROUP=2

What's Changed

  • Minimum services per group by @dannybouwers in https://github.com/dannybouwers/trala/pull/75

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.11.1...v0.12.0

v0.11.1 Maintenance

Minor fixes and improvements.

Full changelog

🤖 Tag Fetching Improvements

Thanks to Ethan Sholly, the owner of selfh.st, who provided a custom integration for TraLa, I could simplify and make tag fetching more robust. You probably won't notice anything, but under the hood, the application now handles tags more efficiently and reliably.

What's Changed

  • Using new Selfh.st Apps integration by @dannybouwers in https://github.com/dannybouwers/trala/pull/74

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.11.0...v0.11.1

v0.11.0 New feature
Notable features
  • Smart grouping automatically organizes services based on tags from selfh.st/apps
  • Manual group assignment via group field in service overrides
  • Collapsible and expandable groups with individual frontend toggles
Full changelog

🚀 Smart Grouping

Tired of scrolling through a long list of services? With the new smart grouping feature, TraLa now automatically organizes your services into logical groups based on their tags from selfh.st/apps. No more clutter - just a clean, organized dashboard! And off course with the option to manually override it.

How it works

Smart grouping analyzes your service tags and configurations to create meaningful categories. For example, services with similar tags will be grouped together, and you can manually assign services to specific groups using the group field in service overrides. Groups can be collapsed or expanded individually via the frontend toggle.

Configuration Options

  • Enable/Disable Grouping: Control whether smart grouping is enabled using the grouping.enabled setting in your configuration file or the GROUPING_ENABLED environment variable.
  • Columns: Adjust the number of columns displayed in grouped view for extra-large screens (1-6 columns) using grouping.columns or GROUPED_COLUMNS.
  • Tag Frequency Threshold: Fine-tune which tags are used for automatic grouping by setting a threshold (0.0-1.0) with grouping.tag_frequency_threshold or GROUPING_TAG_FREQUENCY_THRESHOLD.
  • Manual Group Assignment: Override automatic tag-based grouping by assigning services to specific groups in the group field of service overrides.

Example

version: 3.1

# Service configuration
services:
  # Smart grouping settings
  grouping:
    enabled: true
    columns: 3  # Number of columns in grouped view (1-6), default: 3
    tag_frequency_threshold: 0.9  # Threshold for excluding tags present in more than 90% of services

  # Service overrides for display names, icons, and groups
  overrides:
    - service: "unifi-controller"
      display_name: "UniFi Network"
      icon: "ubiquiti-unifi.svg"
      group: "Network"

What's Changed

  • Service Grouping Implementation by @dannybouwers in https://github.com/dannybouwers/trala/pull/69

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.10.1...v0.11.0

v0.10.0 Breaking risk
Breaking changes
  • Update config to version 3.0, move exclude list under routers key, add entrypoints key
Notable features
  • Exclude services by entrypoint name with wildcard support
v0.9.0 New feature
Notable features
  • i18n support with language selection via LANGUAGE environment variable or configuration.yml; German and Dutch translations included
  • Clear search button functionality with multilingual support
Full changelog

🚀 Translated frontend

With this version you can select the frontend language using the language parameter. You can now have a frontend in German or Dutch (next to the default English). Please create a PR if you would like to add another translation!

Next to that: fixes and updates.

How it works

The application's language can be configured either through the LANGUAGE environment variable or the configuration.yml file.

# Environment settings (optional, environment variables take precedence)
environment:
  language: nl  # change Language (Default "en").

What's Changed

  • Add i18n support by @M1scer in https://github.com/dannybouwers/trala/pull/45
  • Update README.md after i18n merge by @dannybouwers in https://github.com/dannybouwers/trala/pull/56
  • Fix icon override with name override by @dannybouwers in https://github.com/dannybouwers/trala/pull/57
  • feat: add clear search button functionality and translations by @dannybouwers in https://github.com/dannybouwers/trala/pull/58
  • fix: update setInterval to call updateClock and updateGreeting together by @dannybouwers in https://github.com/dannybouwers/trala/pull/59
  • feat: add Dutch language support and translations by @dannybouwers in https://github.com/dannybouwers/trala/pull/60
  • fix(deps): update module golang.org/x/text to v0.30.0 by @renovate[bot] in https://github.com/dannybouwers/trala/pull/55
  • Update Go & Node by @dannybouwers in https://github.com/dannybouwers/trala/pull/61
  • fix: Readme by @dannybouwers in https://github.com/dannybouwers/trala/pull/62

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.8.0...v0.9.0

v0.8.0 New feature
Notable features
  • Wildcard support (. and *) in service exclusion
  • Basic authentication for Traefik API access
v0.7.0 Breaking risk
Breaking changes
  • Move icons section under services, update config version to 2.0
Notable features
  • Override service display names with display_name attribute
  • Manually add services not managed by Traefik
v0.6.0 New feature
Notable features
  • Search bar displays icon showing configured search engine
  • Placeholder text updated to clarify web search capability
Full changelog

🚀 Search bar update

A small icon in the search bar now shows which search engine you have configured. Also changed the placeholder text to clarify the search bar can also be used to search the web.

What's Changed

  • 31 feature update search bar by @dannybouwers in https://github.com/dannybouwers/trala/pull/39

Full Changelog: https://github.com/dannybouwers/trala/compare/v0.5.2...v0.6.0

v0.5.1 Bug fix

Fixed URL building to respect user-specified entryPoint order instead of alphabetical sorting.

v0.5.0 New feature

Mount custom icon directories for offline usage with fuzzy matching search.

v0.4.0 Breaking risk
Breaking changes
  • Merge icon_overrides.yml and services.yml into configuration.yml
Notable features
  • Improved icons search
  • Improved TLS detection
v0.3.0 New feature

Service exclusion feature enables hiding specific services from the dashboard.

Beta — feedback welcome: [email protected]