$ show Kozea/Radicale
Radicale is a production-grade CalDAV and CardDAV server implemented in Python. It provides a self-hosted solution for managing calendars, address books, tasks, and journals via standard WebDAV, CalDAV, and CardDAV protocols. The system supports multi-user, multi-collection setups with pluggable backends for authentication (htpasswd, LDAP, IMAP, OAuth2, PAM, Dovecot, remote_user), storage (multifilesystem with caching), rights management, sharing (token/map-based), and web UI. It includes a built-in HTTP/HTTPS server with WSGI compatibility, a browser-based management interface, and extensive configuration options for security, performance, and integration with reverse proxies. The architecture follows a modular plugin pattern: each major subsystem (auth, storage, rights, web, hook, sharing, group) defines a base class and is loaded dynamically via a plugin loader. The core application dispatches HTTP requests through a WSGI application class that handles authentication, locking, logging, and profiling. The storage layer uses a mixin-based design to separate concerns (cache, sync, history, lock, etc.) and stores collections as filesystem directories with individual item files. The sharing module provides a REST API for managing shares, including VCF-to-ICS birthday conversion and property overlays. Key features include CalDAV filtering and recurrence expansion, sync-token support, free-busy reports, email notifications via hooks, and a JavaScript frontend for collection and sharing management. The codebase is well-tested with both unit tests (Python) and integration tests (Playwright), and includes CI/CD pipelines for multi-architecture Docker images and PyPI publishing. While primarily an application, it contains reusable data processing logic for iCalendar/vCard parsing and transformation.
The LLM identified 4 files worth highlighting for reuse:
Implements the CalDAV filter engine for querying calendar data by component, property, and time-range matches. This module is self-contained and could be extracted for use in any iCalendar processing pipeline. It demonstrates non-obvious skill in handling complex recurrence rules, timezone conversions, and RFC 4791 filter syntax, making it a reusable asset for calendar data analysis or validation.
Provides the sharing management API with CRUD operations for token and map-based shares, including VCF-to-ICS birthday conversion with configurable templates. The module is isolated from the rest of the application (depends only on base classes and utilities) and could be reused as a standalone sharing service or integrated into other CalDAV/CardDAV servers. The conversion logic with placeholder substitution and conditional fallbacks is particularly well-crafted.
Defines a schema-driven configuration system with type validation, default values, and plugin extension support. The module uses custom type functions (positive_int, filepath, json_str) and layered configuration sources (files, environment variables, CLI). This pattern is reusable for any Python application needing robust configuration management, and the validation logic demonstrates careful handling of edge cases.
Contains utilities for safe filesystem operations: path sanitization, collision detection, atomic file renames, and filesystem capability detection (case sensitivity, unicode support, trailing whitespace). These functions are self-contained and could be extracted for use in any application that writes to the filesystem, especially those dealing with user-provided filenames. The rename_exchange function for atomic swaps is a particularly elegant solution.