Skip to main content

Crate eventky_app_specs

Crate eventky_app_specs 

Source

Re-exports§

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;

Modules§

constants
traits

Structs§

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

Enums§

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.

Functions§

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).