calender stuff
This commit is contained in:
1 parent
8e78468743
commit
e0fca064ae
15 files changed
+1716
-67
No files matched your search
@@ -119,7 +119,11 @@ hyprcrd/
|
||||
- **Split view** showing tag-related and content-related cards
|
||||
- **Import/Export** as JSON+media ZIP or Obsidian/Logseq-compatible markdown vault
|
||||
- **Drag & drop** card reordering and grouping
|
||||
- **Keyboard shortcuts**: `Ctrl+K` search, `Shift+scroll` zoom, arrow keys in autocomplete
|
||||
- **Calendar** with month view, journal entries, appointments, and day popup
|
||||
- **CalDAV sync** with ownCloud/Nextcloud (bidirectional, `#termin` tagged cards)
|
||||
- **Inline calculator** (`?3+5` → `8`, `34+56?` → `34+56=90`)
|
||||
- **Snippets** (`?dat`, `?time`, `?now`, `?todo`, `?table`, `?code`, ...)
|
||||
- **Keyboard shortcuts**: `Ctrl+K` search, `F1` help, `Shift+scroll` zoom, arrow keys in autocomplete
|
||||
|
||||
## Data & Backup
|
||||
|
||||
@@ -141,6 +145,65 @@ Back up both to preserve everything. The database auto-migrates on startup.
|
||||
image.jpg
|
||||
```
|
||||
|
||||
## CalDAV Sync (ownCloud / Nextcloud)
|
||||
|
||||
hyprcrd can sync appointment cards with any CalDAV server (tested with ownCloud 10.15.3.0).
|
||||
|
||||
### Setup
|
||||
|
||||
1. Open the **calendar** (button in header)
|
||||
2. Click the **gear icon** in the calendar header
|
||||
3. Enter your CalDAV URL, username, and app password:
|
||||
```
|
||||
URL: https://cloud.example.com/remote.php/dav/calendars/your-user/personal/
|
||||
Username: your-user
|
||||
Password: your-app-password
|
||||
```
|
||||
4. Click **test** to verify the connection
|
||||
5. Click **save**
|
||||
|
||||
### How it works
|
||||
|
||||
- Cards tagged with `#termin` are synced as calendar events
|
||||
- The appointment card template maps to iCalendar fields:
|
||||
```markdown
|
||||
Title: 2026-04-15 — Team Meeting
|
||||
|
||||
**Zeit:** 14:30-15:30
|
||||
**Ort:** Room 42
|
||||
**Teilnehmer:** Alice, Bob
|
||||
|
||||
---
|
||||
|
||||
**Notizen:**
|
||||
Agenda items here
|
||||
|
||||
#termin
|
||||
```
|
||||
- **Sync is bidirectional**: local changes push to the server, remote changes pull to hyprcrd
|
||||
- **Conflict resolution**: last-modified timestamp wins
|
||||
- **Deleted cards**: tracked via tombstones, deleted on the server on next sync
|
||||
- **Auto-sync**: triggers when opening the calendar (max once per minute)
|
||||
- **Manual sync**: click the cloud icon in the calendar header
|
||||
|
||||
### Security
|
||||
|
||||
- Credentials are encrypted at rest (AES-256-CBC) in the SQLite database
|
||||
- All sync operations run server-side (PHP/cURL), no client-side credential exposure
|
||||
- Supports HTTPS with certificate verification
|
||||
|
||||
## Calendar
|
||||
|
||||
The built-in calendar shows cards on their dates:
|
||||
|
||||
- **Journal cards** (title = `2026-04-08`) appear on that date
|
||||
- **Appointment cards** (title = `2026-04-08 — Subject`) appear on their date
|
||||
- **Other cards** fall back to their creation date
|
||||
- **Click a day** to see all cards in a popup
|
||||
- **Double-click** or use **+ journal** / **+ termin** to create new entries
|
||||
- Appointment template includes Zeit, Ort, Teilnehmer, Notizen fields
|
||||
- Navigate months with arrow buttons, **today** jumps to current date
|
||||
|
||||
## Rebuilding Tailwind CSS
|
||||
|
||||
After changing Tailwind utility classes in HTML or JS files:
|
||||
|
||||
Reference in new issue
Block a user