Skip to main content Crate eventky_app_specs Copy item path Source pub use constants::EVENTKY_PATH ;pub use constants::MAX_ATTENDEE_URI_LENGTH ;pub use constants::MAX_CALENDAR_AUTHORS ;pub use constants::MAX_CALENDAR_DESCRIPTION_LENGTH ;pub use constants::MAX_CALENDAR_NAME_LENGTH ;pub use constants::MAX_CALENDAR_URIS ;pub use constants::MAX_EVENT_DESCRIPTION_LENGTH ;pub use constants::MAX_EVENT_LOCATIONS ;pub use constants::MAX_EVENT_SUMMARY_LENGTH ;pub use constants::MAX_EVENT_UID_LENGTH ;pub use constants::MAX_LOCATION_DESCRIPTION_LENGTH ;pub use constants::MAX_LOCATION_LABEL_LENGTH ;pub use constants::MAX_LOCATION_URI_LENGTH ;pub use constants::MIN_EVENT_SUMMARY_LENGTH ;pub use constants::MIN_EVENT_UID_LENGTH ;pub use constants::PROTOCOL ;pub use constants::PUBLIC_PATH ;constants traits EventLocation Slim event location — URI-first, with human-readable label and optional
description. Designed to co-exist with the universal-tags convention:
a PubkyAppTag targeting the same uri creates a cross-app edge in nexus. PubkyAppAttendee Attendee - an RSVP/participation record for an event (simplified for self-RSVP only)
URI: /pub/eventky.app/attendees/:attendee_id PubkyAppCalendar Calendar container - collection of events
URI: /pub/eventky.app/calendars/:calendar_id
Where calendar_id is a timestamp-based ID (like events) PubkyAppEvent Event - a scheduled activity or occasion
URI: /pub/eventky.app/events/:event_id
Where event_id is a timestamp-based ID for chronological ordering PubkyId Represents user data with name, bio, image, links, and status. StyledDescription Represents styled description with metadata for rich content EventLocationKind Kind of event location. PHYSICAL places typically have an OSM URL as uri;
VIRTUAL locations carry a meeting URL (Zoom, Jitsi, Google Meet, etc.). EventkyAppObject A unified enum wrapping all EventkyApp objects dispatched from the watcher. eventky_attendee_uri_builder Builds an Attendee URI eventky_base_uri_builder Builds an Eventky base URI: “pubky://<user_id>/pub/eventky.app/” eventky_calendar_uri_builder Builds a Calendar URI eventky_event_uri_builder Builds an Event URI: “pubky://<author_id>/pub/eventky.app/events/<event_id>” is_valid_datetime Validates an ISO 8601 datetime (YYYY-MM-DDTHH:MM:SS[.sssssss][Z|±HH:MM])
This is a lenient format check — accepts with or without timezone suffix. is_valid_duration Validates an RFC 5545 duration: PnYnMnDTnHnMnS (basic check).
Examples: PT1H, PT30M, P1D, P1DT2H30M is_valid_hex_color Validates a CSS hex color (#RRGGBB or #RGB). is_valid_rrule Validates an RFC 5545 RRULE string — must start with FREQ= and contain only
known parts. Lenient check suitable for sanitize-and-store scenarios. is_valid_timezone Validates an IANA timezone identifier — must have a ‘/’ separator and only
valid chars (letters, digits, ‘_’, ‘-’, ‘/’, ‘+’). validate_pubky_uri Validates a pubky:// URI. validate_timestamp_microseconds Validates a microsecond-precision UNIX timestamp. Rejects non-positive values and
anything more than 1 day in the future (clock-skew tolerance).