@@ -1,19 +1,31 @@
|
||||
# Time Tools
|
||||
|
||||
Work with dates, time zones and recurrences locally in the browser.
|
||||
Plan across time zones and work with dates and recurrences locally in the browser.
|
||||
|
||||
Time Tools is a standalone local-first application in the [add·ideas Toolbox](https://git.add-ideas.de/lotobo/toolbox-portal). Inputs are processed in the browser and are not uploaded.
|
||||
|
||||
## Version 0.1 scope
|
||||
## Version 0.2 scope
|
||||
|
||||
- Exact signed epoch conversion through nanosecond precision
|
||||
- IANA-zone comparison, skipped/ambiguous local-time resolution and transition inspection
|
||||
- Side-by-side wall-clock and elapsed-duration arithmetic
|
||||
- Bounded 5/6/7-field cron and strict RFC 5545 RRULE occurrence previews
|
||||
- Bounded cron previews with explicit Unix/Vixie, GitHub Actions, Croner, Quartz and AWS EventBridge dialect rules, plus strict RFC 5545 RRULE previews
|
||||
- A bounded multi-participant meeting planner that compares entered recurring local work windows across IANA zones
|
||||
- Weekend/explicit-holiday business-day arithmetic and escaped UTC iCalendar event export
|
||||
- Bounded `.ics` file/paste import with structural validation, multiple-event inventory, VTIMEZONE inspection and recurrence previews that apply EXDATE/RDATE plus moved or cancelled RECURRENCE-ID overrides
|
||||
- Inert URL and attachment inspection: references are reported as data and are never fetched, opened, decoded or rendered
|
||||
|
||||
iCalendar import is limited to 8 MiB, 100,000 content properties, 20,000
|
||||
components, 10,000 events, 16 component levels and 1,000 previewed
|
||||
occurrences. Named TZIDs available to the browser are evaluated with its IANA
|
||||
data. Custom VTIMEZONE observances are inventoried, but recurrence expansion is
|
||||
withheld when the browser cannot execute that TZID rather than guessing an
|
||||
offset.
|
||||
|
||||
Named-zone results use the IANA data supplied by the browser runtime and can therefore vary with browser versions. ECMAScript Temporal does not represent leap seconds. The business-day calculator excludes weekends and only the holiday dates supplied by the user; it does not infer regional calendars. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [docs/PRIVACY-SECURITY.md](docs/PRIVACY-SECURITY.md).
|
||||
|
||||
Cron previews intentionally reject fields or extensions outside the selected dialect and show the normalized expression and scheduler caveats. The meeting planner reads no calendar, holiday, travel or presence data: every candidate comes only from the work windows and weekend choices entered in the page.
|
||||
|
||||
## Development
|
||||
|
||||
Requires Node.js 22 and npm 11.
|
||||
@@ -26,7 +38,7 @@ npm run test:browser
|
||||
|
||||
## Release
|
||||
|
||||
`npm run release:artifact` creates a deterministic `release/time-tools-0.1.0.zip` and checksum sidecar.
|
||||
`npm run release:artifact` creates a deterministic `release/time-tools-0.2.0.zip` and checksum sidecar.
|
||||
|
||||
## Licence
|
||||
|
||||
|
||||
Reference in New Issue
Block a user