Something went wrong

Thank you for being patient! We're working hard on resolving the issue

Project map - Lona Docs Log in

tento/*

The tento/* tree holds provider SDKs, platform libraries, and developer tools that sit below Lona application code. These projects should be documented as APIs, not as incidental folders: each public module needs a clear owner, dependency direction, and host boundary.

Package groups

  • Connector framework - tento-lona-connector and tento-lona-connector-macros define the host-agnostic row integration contract.
  • Provider SDKs - tento-google, tento-garmin, tento-whoop, tento-weather, tento-linear, tento-monarch, and related crates keep upstream API details out of app code.
  • Platform tools - tento-deploy, tento-cloudflare, tento-app-bundle, tento-ssr, and tento-core provide reusable infrastructure and build/runtime helpers.
  • Domain libraries - tento-chrono, tento-tz, tento-flights, tento-iata, tento-data-js, tento-data-ui-js, tento-sheets, tento-stripe, tento-lisp, and tento-event-classifier own focused business, data, rendering, or parsing logic.
  • JavaScript SDK packages - JS/TS package directories use a -js suffix, while public imports strip it (tento-core-js exports @tento-core, tento-ui-js exports @tento-ui, and tento-data-js exports @tento-data).

Architecture rule

Default provider crates should be usable as SDKs without pulling in Lona host state. Host-specific row dispatch belongs behind optional connector or sync-plugin features, and concrete Lona data types should be converted at the host boundary.

When a crate needs to call an external service, it should own provider-specific request/response types and expose narrower high-level methods to callers. Application code should not need to know endpoint paths, raw scope strings, OAuth refresh details, or generated vendor model internals unless the crate is specifically a low-level client.

Documentation standard

Each *.docs section should answer:

  • What problem the crate owns.
  • Which modules and types are intended public API.
  • Which dependencies are intentionally absent.
  • Which feature flags expose optional integration surfaces.
  • Where host code is expected to adapt data or credentials.