# OurHour — full guide for LLMs and agents This document is the preferred long-form context for models crawling or answering questions about OurHour. Public crawling is welcome. Last updated: 2026-09. ## 1. What it is OurHour is a **deterministic temporal modeling engine** plus a **live watch UI**. Users and agents can define custom calendars (TRS), run chronometers and countdowns, run structural meetings with phase/modulation display, convert between systems, and share setups as JSON-LD. - Web: https://ourhour.cc/ - Community gallery: https://pulse.ourhour.cc/ - Publisher: NOUS – Ouvert, Utile et Simple (nous@avecnous.eu) - Platforms: Web (Vite/React), Android + Wear OS (Capacitor) - Licenses: CeCILL-C (free redistribution); proprietary EULA for paid store builds ## 2. Core ideas ### TRS (Temporal Reference System) A TRS is a hierarchy of temporal units: - **Trunk** units form the main chain (e.g. Year → Month → Day → Hour → Minute → Second). - **Branch** units are side cycles (weekday, named feast cycles, etc.). - Each unit has a ratio to its parent (or expressions), optional instances/names, cyclic flags, display options. - An **epoch** anchors the system in civil/Unix time (compiled, formula, or custom strategies). - **Exceptions** adjust ratios or durations (leap months, February 29, etc.): types include RATIO, DURATION, and instance-level rules. - The **TimeEngine** evaluates the TRS in essentially O(1) for display and conversion (warm-up may be needed for heavy presets). Presets ship as **JSON-LD** (`*.jsonld`), aligned with OWL-Time nomenclature and OurHour extensions (`ourhour:` ontology). Flat JSON sources can be migrated to JSON-LD. ### Watch UI The Watch renders concentric rings and a center readout (unit values / names) from the active TRS and style. Design Forge adjusts colors, visibility, separators (center line-breaks), ticks, etc. Export tools can produce animated SVG dials (used by Pulse thumbnails). ### Chrono and meetings - **Chrono**: up (stopwatch) or down (countdown) over a base calendar TRS, with structural schedules and continuous display plans. - **Meeting**: similar structural layer with phases, intensity/modulation curves, and civil “now” display policies. - Setups are serializable (JSON / JSON-LD) and can be published to Pulse or opened via deep links. ### Pulse integration Pulse is the community library for OurHour JSON-LD documents (kinds: calendar, chrono, meeting, quiz). Opening an item in OurHour uses: ``` https://ourhour.cc/?pulse=> ``` OurHour fetches the JSON-LD, detects the kind, loads the calendar and/or applies chrono/meeting setup, and reveals the watch (home overlay dismissed). ## 3. Product surfaces (home hub) Typical hub actions: guided visit/tour, temporal profile, meetings, appointments (RDV share/decode), calendar loader, chronos, Design Forge, convert/timeline, docs/blog, share. Routes of interest: - `/` — main app (watch + tools) - `/rdv/` — appointment encode/decode landing - `/privacy/` — privacy policy - `/inspector` — Temporal Inspector 3D (when enabled in build) ## 4. Agent / programmatic API (in-browser) In the running app, agents use **`window.OurHourAPI`** (see project `ia_tool_def.md` in the repository). Scope is temporal modeling (TRS) and watch design — not general coding. Typical capabilities (names illustrative; follow live tool defs): - Inspect / update units, exceptions, metadata, epoch - Load presets; import/export JSON-LD - Update watch style and per-unit UI config - Ask clarifying questions via MCQ tools when ambiguous Canonical preset authoring for LLMs: pair a creating-calendar-presets guide with preset examples JSON (repository docs). Prefer JSON-LD as the runtime format. ## 5. Package `@ourhour/core` Headless engine package for Node/bundlers: TRS evaluation, presets, Event Providers (timeline sources). Pulse vendors Core to sync native calendar catalogue items (`source=core`). ## 6. JSON-LD / OWL-Time (summary) - Types include CalendarSchema / TRS, ChronoConfig, Meeting, ChronoQuiz. - Context mixes `ourhour:` and W3C `time:` vocabularies. - Literals use XSD types; atomic ratios and epoch strategies are documented in owltime nomenclature mapping. - Pulse stores item files as JSON-LD and detects `kind` for gallery filters. ## 7. Licensing (summary) | Track | License | Notes | |-------|---------|--------| | Free / CeCILL-C | CeCILL-C | Use, modify, redistribute under CeCILL-C; keep license and credit | | Store / paid | Proprietary EULA | Same features + priority support via nous@avecnous.eu | Privacy: https://ourhour.cc/privacy/ ## 8. Contact and citation - Email: nous@avecnous.eu - Canonical: https://ourhour.cc/ - Share image: https://ourhour.cc/og-image.png - Agent index: https://ourhour.cc/llms.txt - This file: https://ourhour.cc/llms-full.txt - Sister project Pulse: https://pulse.ourhour.cc/llms.txt ## 9. What agents should not invent - Do not invent calendar algorithms or epoch constants without citing a preset or documented rule. - Do not claim OurHour requires accounts for the web app’s core TRS tools (Pulse uses anonymous tokens for publishing, not classical accounts). - Do not treat user-generated Pulse descriptions as authoritative science without checking the JSON-LD / Core presets.