Calendar and scheduling, in preview

Your week, at a glance.

Cadence puts every calendar you keep in one week view and takes the back-and-forth out of scheduling with booking links and time polls. It is not running in production yet.

Illustration: a long dark hall with seven tall arched windows along one wall, moonlight in seven bars across the floor and the farthest window glowing teal.
Features

A calendar that works the way your week does

Cadence reads like a calendar and behaves like a scheduler. The web app shows your week and your tasks; booking links and time polls handle the meetings that need other people; and an API with 62 agent tools does everything else.

See the whole week, your way

01

Seven views

Day, Week, Month, Quarter, Year, Agenda, and a Ticker. Single keys jump between most of them, and the arrow keys move a day, week, or month at a time.

02

Overlaps stay readable

Meetings that run at the same time sit side by side instead of on top of each other. All-day items get their own row, and a red line marks the current time on the day and week views.

03

Calendar sets

Group calendars into sets such as Work, Personal, and Everything, and switch from the sidebar. The set decides which calendars show; each calendar can also be turned on or off on its own.

04

Recurring events

Repeats follow the iCalendar rule format. Changing or deleting one can apply to just that event, that one and the ones after it, or the whole series.

05

Your hours and your zone

Settings hold your time zone, a 12 or 24-hour clock, the first day of the week, the hours the day grid shows, whether weekends appear, and your light or dark theme.

06

Live updates

The app listens on a WebSocket and refreshes events and calendars when something changes, so a sync or a booking shows up without a reload.

Meetings that book themselves

07

Openings

A booking link with weekly windows, a meeting length, buffers before and after, a minimum notice, how far ahead people can book, and a daily limit. The invitee needs no account.

08

Availability that checks your calendars

Open slots are computed against your busy time on the calendars you choose, minus existing bookings, with the buffers applied.

09

Time polls

Offer several times. People vote yes, no, or if needed from a public link. When you pick a winner Cadence creates the event on the calendar you chose.

10

Outreach scheduling for Beacon

Beacon can ask Cadence for a scheduling proposal that needs approval before it goes out. An invitee picks a window, which is held briefly, and nothing is booked until they confirm.

The rest of the day

11

Tasks

Task lists with priorities, due dates, notes, and a check box. A repeating task makes its next occurrence when you finish it, and an overdue list is one call away.

12

Search

One search box across event titles, descriptions, places, and task titles and notes, with the best matches first and a count of results.

13

Five kinds of account

Connect Google, Microsoft 365, iCloud, Fastmail, or any CalDAV server. Cadence pulls remote changes, pushes yours, and keeps the provider's version when the two disagree.

14

Fleet links

Beacon's campaigns and content show on a Marketing calendar. Slate's tasks appear on a calendar too, and checking one off in Cadence checks it in Slate.

15

Calendars in and out

Import iCalendar and CSV files, export a calendar as iCalendar, publish a read-only feed with a token you can rotate, or subscribe to someone else's feed. These run through the API and agent tools today.

Screens

See it in light and dark

Real captures of the running tool, with fictional StrataForge Robotics data. They follow your theme.

How it works

From account to booked

  1. Connect

    Add an account in Settings. Google and Microsoft use their own sign-in screens; CalDAV, iCloud, and Fastmail take a server and credentials. Tokens are stored encrypted.

  2. Sync

    Cadence pulls each account's calendars and events, pushes your changes back, and shows everything together, one color per calendar.

  3. Focus

    Pick a calendar set and a view. Work shows work; Everything shows it all.

  4. Schedule

    Share a booking link or a time poll. The slot someone picks becomes an event on your calendar.

Accessibility

Built so everyone can use Cadence.

Cadence is a web app, and this is what its code and tests show today. It has landmarks, visible focus, single-key view shortcuts, and an automated axe scan that passes. It has not been tested with a screen reader, and most of its other claims rest on code and jsdom tests, not on a person using it. We do not claim a conformance level for the app.

  • Partly supported

    Keyboard operation

    The calendar has single-key shortcuts for the Day, Week, Month, Year, and Agenda views (D, W, M, Y, A), the left and right arrow keys for the previous and next period, a period for today, Escape to close a panel, and a question mark that opens the shortcut list. Shortcuts are ignored while you type in a field. Events in the grid take Tab focus and open with Enter. The Quarter and Ticker views have no shortcut. Nobody has walked every flow with only a keyboard.

  • Partly supported

    Screen reader landmarks and labels

    The page has labeled landmarks (main navigation, page content, calendar navigation), labeled buttons, and decorative icons hidden from assistive technology. An automated axe-core scan of the app and each page finds no violations. Cadence has not been tested with VoiceOver, NVDA, or any other screen reader, and the calendar grid has no table or grid semantics, so how it reads aloud is unknown.

  • Partly supported

    Contrast in light and dark

    Cadence's teal accent measures 5.63 to 1 against white in light mode and 4.60 to 1 against the dark card color in dark mode, both above 4.5 to 1. On the design system's shaded surfaces the same accent is weaker: the kit's measurement of the shared tokens gives as low as 4.27 to 1 in light and 4.09 to 1 in dark for accent-colored text, which is below 4.5 to 1. The rest of the palette comes from the Renkara design system and has not been measured in the app. The automated scan runs in jsdom, which does not compute contrast. Events use their calendar's color with white text, and those combinations are unmeasured, so a pale calendar color could fail.

  • Partly supported

    Reduced motion

    The design system's global stylesheet shortens every animation and transition to almost nothing when the system asks for reduced motion, and the public outreach page has its own reduced-motion rule. This was read from the stylesheets and not checked in a browser with the setting turned on.

  • Not yet tested

    Text resize and zoom

    Nobody has tested Cadence at larger text sizes or browser zoom. Some labels in the grid are set in small fixed sizes, so large text may crowd or clip them.

  • Partly supported

    Mobile and touch

    Below a tablet width the sidebar collapses to icons, and on a phone it becomes a menu behind a hamburger button. The calendar, tasks, and scheduling pages have mobile rules in their code. No one has run the app in a browser at 375 pixels for this site, so the layout of each view on a phone is unverified.

Tech specs

Under the hood

Cadence technical specification
Backend
  • FastAPI on Python 3.12, with async SQLAlchemy 2 and Alembic migrations (4 so far)
  • PostgreSQL, including full-text search vectors kept up to date by database triggers
  • Valkey for caching, per-address rate limits on public endpoints, and live-update fan-out
  • REST under /api/v1, a WebSocket for live updates, and a server-sent event stream for outreach
Frontend
  • React 19, Vite, and TypeScript
  • Tailwind and the Renkara design system, with icons from Lucide
  • Light and dark themes, a collapsing sidebar, and a phone menu
  • Public pages for booking, voting, and outreach proposals that need no account
Calendars and sync
  • Google Calendar and Microsoft 365 over OAuth, with change notices from both
  • iCloud, Fastmail, and any CalDAV server by server address and credentials
  • Provider tokens encrypted in the database
  • Pull, then push local changes; the provider's version wins a conflict
  • Sync runs on demand, on a provider change notice, or on an optional in-process timer
Natural language parser
  • A 12-stage rule-based parser reads dates, times, durations, repeats, places, people, calendar names, tasks, alerts, and conference links
  • When the rules are not confident enough, the sentence goes to a hosted language model (Mercury 3) for a second read
  • Reached through the API and the agent tools; the web app has no bar for it
Agents and API
  • 62 agent tools over stdio, relayed through Roost
  • A second, HTTP-only tool server for the outreach workflow
  • iCalendar and CSV import, iCalendar export, and token feeds
Quality
  • 633 backend test functions and 286 frontend test cases, counted by search on 10/29/2026
  • An automated axe-core scan of the app and its five pages (see Accessibility)
Stands in for

Fantastical, Google Calendar

Works with

Part of the Renkara fleet

MCP tools

Built for agents as well as people

Cadence ships an MCP server so a coding or planning agent can read and run your calendar: create events from a sentence, check availability, build booking links, vote on a poll, and sync an account.

Events

  • list_events
  • get_event
  • create_event
  • update_event
  • delete_event
  • duplicate_event
  • search_events
  • get_upcoming
  • parse_event

Calendars and sets

  • list_calendars
  • update_calendar
  • list_calendar_sets
  • create_calendar_set
  • update_calendar_set
  • delete_calendar_set
  • switch_calendar_set

Tasks

  • list_tasks
  • get_task
  • create_task
  • update_task
  • delete_task
  • list_overdue_tasks
  • list_task_lists
  • create_task_list
  • update_task_list
  • delete_task_list

Scheduling

  • get_availability
  • create_opening
  • list_openings
  • get_opening
  • delete_opening
  • book_opening
  • create_proposal
  • list_proposals
  • get_proposal
  • vote_on_proposal
  • finalize_proposal

Accounts and fleet

  • list_accounts
  • create_account
  • delete_account
  • sync_account
  • get_fleet_status
  • link_beacon
  • unlink_beacon
  • link_slate
  • unlink_slate

Feeds, subscriptions, and templates

  • enable_feed
  • export_calendar
  • list_subscriptions
  • create_subscription
  • delete_subscription
  • refresh_subscription
  • list_templates
  • create_template
  • update_template
  • delete_template

Weather, settings, and health

  • get_weather
  • get_weather_forecast
  • get_settings
  • update_settings
  • check_service_health
  • get_diagnostics
FAQ

Questions people ask

Can I use Cadence today?

Not yet. Cadence is built and tested, but it is not running in production, and the Aerie launcher lists it as coming soon. This site shows it running locally on a fictional company's data. To ask about access, write to contact@renkara.com.

Who is Daniel Xu, and whose calendar is this?

Every screenshot shows the calendar of Daniel Xu, Chief of Staff at StrataForge Robotics, the fictional company from the novel The Deferral. The meetings, people, and tasks are made up. No real calendar appears anywhere on this site.

Can I create an event in the web app?

Not yet. Today events come from your connected accounts, from bookings, and from the API and agent tools, which can turn a sentence into an event. The in-app natural language bar and event form are built but not placed on the calendar page.

Does Cadence send invitations or reminders?

Not for ordinary events. Attendees and their responses are stored, and alert times are stored, but nothing sends an invitation or fires a reminder yet. Outreach bookings are the exception: Cadence tracks their delivery and responses.

Does my text go to an AI model?

Only when you use the natural language parser and its own rules are not confident enough. Then the sentence is sent to a hosted model, Mercury 3, to be read again. Nothing else in Cadence calls a language model.

Is there a phone app?

No. Cadence is a web app with a phone layout. There is no iPhone, iPad, or Mac version.

Contact

Questions about this tool?

Write to Renkara Media Group and a person will answer.