From dd4716faf4d563676bd84a895124a9ccd5939c09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Tollk=C3=BChn?= Date: Tue, 27 Oct 2026 11:43:43 +0100 Subject: [PATCH] Update README - add license section, - add info about vibe coding at top - add information about contacts search GET - minor changes --- README.md | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index c6e7a60..389049f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ # AToCal — Add To Calendar +> **Vibe-coded:** AToCal is written by Mistral AI's coding agent, not by hand. +> The maintainer sets the goals, makes the product decisions and tries the app +> out in the browser; there has been no independent human code review and +> no security audit. + A Nextcloud app that lets remote applications create events in the authenticated user's Nextcloud Calendar via a simple link. @@ -21,8 +26,10 @@ remote app Nextcloud (atocal) ``` The remote app links the user to the confirm page. The user reviews -the event and submits the form. The event lands in the user's -"Personal" calendar and the browser opens the Calendar app. +the event and submits the form. The event lands in a calendar the user +chooses. The user adds invitees/attendees to the event, who receive +an invitation, as long as the user owns the calendar. +After the event is created the browser opens the Calendar app. ## Routes @@ -30,6 +37,7 @@ the event and submits the form. The event lands in the user's |--------|------|---------| | GET | `/apps/atocal/confirm` | Show confirmation page | | POST | `/apps/atocal/create` | Create the event | +| GET | `/apps/atocal/contacts/search` | Contact search for the invitee input | ## Link parameters (GET `/confirm` and form POST `/create`) @@ -43,6 +51,9 @@ the event and submits the form. The event lands in the user's | `url` | no | HTTPS URL; merged into description | | `organizer` | no | email address; display info only | +The create form adds `calendarId` (selected calendar) and +`attendees` (emails, max 20). + Dates carry no timezone and are interpreted in the user's Nextcloud timezone (server default as fallback). @@ -73,8 +84,7 @@ https://cloud.example.com/apps/atocal/confirm?summary=Kickoff&start=2026-10-12T1 - Nextcloud 34 or 35 - Calendar app enabled -- A writable calendar named "Personal" - (event creation fails with a friendly error otherwise) +- A writable calendar ("Personal" is preselected if present) ## Install @@ -88,10 +98,18 @@ occ app:enable atocal ## Structure ``` -appinfo/info.xml app metadata -appinfo/routes.php routes -lib/AppInfo/Application.php container setup +appinfo/info.xml app metadata +appinfo/routes.php routes +css/style.css page styles +js/invitees.js invitee input +l10n/*.json translations +lib/AppInfo/Application.php container setup lib/Controller/CalendarController.php confirm/create logic -templates/confirm.php confirmation page -templates/style.css page styles +templates/confirm.php confirmation page ``` + +## Licence + +AGPL-3.0-or-later, see LICENSE. AToCal comes without any warranty. + +AToCal is an independent project and is not affiliated with any other product or company of a similar name.