Skip to content

Technical

Developed in the open

Where the source lives, how Yapaia is tested and how you can join in.

Everything on GitHub

The complete source lives publicly in the monorepo github.com/Yapaia/yapaia:

FolderContents
go/Yapaia Go: core, web app, add-on
beat/Yapaia Beat: radio service, add-on
vision/Yapaia Vision: camera service, add-on
satellite/ESPHome configuration for the voice satellite
router/Yapaia Router documentation and changelog
integration/the “Yapaia” Home Assistant integration incl. router module
dashboards/ready-made Home Assistant dashboards
devices/ESPHome configurations for other devices in the vehicle
docs/protocol and capabilities

One add-on store, one integration, shared rules – and still every module has its own version and changelog.

Tested before it reaches you

Every change runs through automatic checks, only for the modules it touches:

  • Unit and integration tests (Go alone: several thousand)
  • End-to-end tests in the browser
  • Golden routes: real routes on real maps that must not get worse
  • Building the add-on image and looking inside
  • Security tests (sandbox, authentication, dependencies)

Only when everything is green is it merged.

Licence

Yapaia is free software under the GNU General Public License 3.0 or later (GPL-3.0-or-later). You may use, modify and share it – modified versions too, as long as they stay under the same licence and come with source code. Yapaia comes without warranty.

  • Exception: Go’s add-on SDK, the example add-ons and the marketplace’s signature check are under the Apache License 2.0. That way every add-on author decides on their add-on’s licence themselves.
  • Third-party components and data (OpenStreetMap, Valhalla, welle.io …) are listed in DRITTLIZENZEN.md.
  • The name and logo “Yapaia” are not covered by the licence – see NAME-UND-LOGO.md.

Open data

All maps come from OpenStreetMap. If a height limit on a bridge is missing, you can add it there yourself – everyone benefits.

Join in

  • Report bugs or share ideas: issues on GitHub
  • Build your own module: the Yapaia protocol is made for exactly that.
  • Contribute code: please open an issue first. Contributions are only accepted together with a contributor agreement that lets the project also offer Yapaia under other terms (for example to manufacturers).