Release Calendar Tools 0.1.0
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# Calendar Tools
|
||||
|
||||
Inspect, repair, and reconcile calendars locally in the browser.
|
||||
|
||||
Calendar 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
|
||||
|
||||
- RFC 5545 parsing and inspection for events, recurrence, attendees, calendar metadata, and embedded VTIMEZONE definitions
|
||||
- Bounded RRULE/RDATE/EXDATE occurrence preview and overlap/duplicate diagnostics
|
||||
- Merge and deduplication by UID plus RECURRENCE-ID, preferring SEQUENCE and then DTSTAMP
|
||||
- Conservative canonical repair: BOM/NUL removal, CRLF serialization, VERSION and PRODID normalization
|
||||
- Browser-IANA timezone offset/transition reports and explicit DST gap/overlap classification
|
||||
- Relocatable offline PWA, local-only processing, and deterministic release packaging
|
||||
|
||||
Input is limited to 4 MiB, 100,000 physical lines, 10,000 components, and 5,000 events. Recurrence is limited to 500 occurrences per series, a 3,650-day horizon, and 5,000 displayed occurrences. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [docs/PRIVACY-SECURITY.md](docs/PRIVACY-SECURITY.md).
|
||||
|
||||
## Development
|
||||
|
||||
Requires Node.js 22 and npm 11.
|
||||
|
||||
```sh
|
||||
npm ci
|
||||
npm run check
|
||||
npm run test:browser
|
||||
```
|
||||
|
||||
## Release
|
||||
|
||||
`npm run release:artifact` creates a deterministic `release/calendar-tools-0.1.0.zip` and checksum sidecar.
|
||||
|
||||
## Licence
|
||||
|
||||
GPL-3.0-or-later. Runtime dependencies retain their own licences; see [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).
|
||||
Reference in New Issue
Block a user