API Reference PhoenixLiveCalendar v#0.3.0

Copy Markdown View Source

Modules

A comprehensive calendar and scheduling component library for Phoenix LiveView.

Represents a recurring availability window or a date-specific override.

Defines constraints for bookable time slots.

The main calendar LiveComponent.

Renders a single event within a calendar cell or time grid.

A popover/tooltip component for displaying event details on click or hover.

Calendar toolbar component with navigation, title, and view switcher.

A compact month calendar used in year view and as a sidebar date picker.

Renders the time labels column alongside a time grid view.

Represents a date-level annotation — holidays, special hours, closures, notices.

Represents a calendar event.

Optional protocol for auto-converting domain structs to PhoenixLiveCalendar.Event.

Maps per-day numeric data onto heatmap-style PhoenixLiveCalendar.DayMarkers — the GitHub-contributions look for the month and year views.

A named set of events shown or hidden together — "my calendar", a teammate, a room, a project.

Optional PubSub integration for real-time calendar updates.

Represents a schedulable resource such as a room, person, or piece of equipment.

Default Ecto schema for calendar events.

Versioned migrations for PhoenixLiveCalendar's Ecto persistence layer.

Runtime repo resolution for the optional Ecto layer.

Behaviour defining the data access interface for calendar events.

Resolves semantic color tokens to concrete class pairs, so the data layer can say :primary or "brand" instead of hardcoding Tailwind strings.

Booking constraint validation logic.

Date math utilities for calendar grid generation.

Internationalization helpers for calendar labels, day names, month names, and date/time formatting.

Computes side-by-side positioning for overlapping events in a time grid.

Server-side size estimation — the substitute for client measurement.

Performance measurement and telemetry for PhoenixLiveCalendar.

Generates time slot grids for day/week views and bookable slot lists.

Agenda/list view — displays events as a flat chronological list grouped by date.

Day view — a single-column time grid. Delegates to WeekGrid with one date.

Month grid view — the traditional calendar layout with 6 rows of 7 days.

N-day view — shows an arbitrary number of day columns.

Resource columns view — resources displayed as columns in a day/week time grid.

Timeline view — horizontal time axis with resources as rows.

Week time grid view — 7 day columns with a vertical time axis.

Year view — displays 12 mini-month calendars in a responsive grid.

The most compressed genuinely-useful form of each calendar surface — for dashboard cells, sidebars, and anywhere a full view has no room (~200×150px and up).

Mix Tasks

Installs PhoenixLiveCalendar into your Phoenix project.