Skip to documentation content

Events & calendar

Calendar entries — site visits, client meetings, internal reviews. Optionally tied to a project.

What is an event?#

An event is a calendar entry — a site visit, a client meeting, an inspection, an internal review. Vellum's calendar is built on FullCalendar and supports day, week, and month views.

An event has a title, an optional description, a start and end time (or an `all_day` flag), an event type, and a location.

Linking events to projects#

Events can optionally be linked to a project via `ProjectEvent`. The link is many-to-one: an event sits on one project, but a project can have many events. Linking is optional — internal-only events (a team meeting, training) can stand alone.

Linked events show up on the project's detail page and on the firm-wide calendar. They are useful as the time-bound counterpart to project stages: stages are buckets of work, events are appointments around it.

Attendees#

Each event tracks attendees through the `EventAttendee` join table. An attendee can be:

  • An internal employee — visible to anyone in the company.
  • A client — receives a notification email if the event is set to be visible (`show_in_calendar`).

Each attendee has a status: **Pending**, **Confirmed**, or **Declined**. Statuses default to Pending and update as people respond.

Current limitations#

Two things are explicitly not supported today:

  • No recurrence. A weekly site visit must be created as separate events.
  • No reminders. Vellum doesn't send email or push reminders before an event.

Both are on the roadmap. In the meantime, if you need recurring meetings, use your existing email calendar alongside Vellum and link individual occurrences to the project.