Calendar
A full scheduling calendar with Day, Week, Month and Agenda views.
$149 once · every Pro piece
Overlapping events share the day side by side, a live now-line runs across the hour grid, and periods slide in the direction of travel. Drag to move with a 15-minute snap, pull the bottom edge to resize, draw on empty time to create, and drag between days in Month; every move springs into place and is announced. Arrow keys walk slots and days, Enter opens or creates, T jumps to today and 1–4 switch views. The mini-month sidebar tucks behind a header toggle when the week needs the room, and below 640px it settles into Day and Agenda.
Install
npx shadcn@latest add @obsyde/calendarNeeds your licence key · Get Pro
Usage
Import it from where the CLI puts it, or copy the files below by hand.
import { Calendar } from '@/components/obsyde/ember/calendar/Calendar';
export function Example() {
return (
<Calendar />
);
}
Files
What you get with Pro: plain React, TypeScript and CSS, with no dependencies.
ember/calendar/Calendar.tsxcomponentember/calendar/calendar-demo.cssstylesember/calendar/calendar.cssstylesember/calendar/time.tsmoduleember/calendar/layout.tsmoduleember/calendar/kit.tsxmoduleember/calendar/Popovers.tsxmoduleember/calendar/Side.tsxmoduleember/calendar/MonthView.tsxmoduleember/calendar/TimeGrid.tsxmoduleember/calendar/CalendarDemo.tsxdemoember/shared/spring.tssharedember/shared/accent.tssharedember/shared/rolling-number.csssharedember/shared/RollingNumber.tsxsharedember/shared/ember.cssshared
API
| Prop | Type | Default |
|---|---|---|
accentAccent | 'ember' | 'volt' | 'arc' | 'ember' |
viewView | 'day' | 'week' | 'month' | 'agenda' | 'week' |
weekStartWeek starts | 'monday' | 'sunday' | 'monday' |
timeFormatClock | '24' | '12' | '24' |
miniMonthMini-month | 'auto' | 'on' | 'off' | 'auto' |
densityDensity | 'comfortable' | 'compact' | 'comfortable' |
scheduleSchedule | 'calm' | 'busy' | 'calm' |
readOnlyRead only | boolean | false |