Skip to content

Timepage

Timepage is a calendar app for managing schedules, events, and weather. Protocol Launcher allows you to generate official Timepage URL scheme links.

Usage

There are two ways to use this library:

  • On-Demand import from subpaths enables tree-shaking and keeps bundles small.
  • Full Import from the root package is convenient but includes all app modules.

Pick On-Demand for production builds; Full Import is fine for quick scripts or demos.

Select Installation Method

On-Demand
Recommended. Optimized for production.
Full Import
Convenient. Good for quick scripts.

Open Timepage

On-Demand
ts
import { open } from 'protocol-launcher/timepage'

const url = open()

Add Event

On-Demand
ts
import { addEvent } from 'protocol-launcher/timepage'

const url = addEvent({
  title: 'Team Sync',
  day: 'today',
})

Use x-success or x-cancel only when you want Timepage's documented x-callback-url form:

On-Demand
ts
import { addEvent } from 'protocol-launcher/timepage'

const url = addEvent({
  title: 'Team Sync',
  day: 'tomorrow',
  xSuccess: 'shortcuts://callback',
  xCancel: 'shortcuts://cancel',
})

Open Event

On-Demand
ts
import { openEvent } from 'protocol-launcher/timepage'

const url = openEvent({
  event: 'next',
})

Open Event Map

On-Demand
ts
import { openEventMap } from 'protocol-launcher/timepage'

const url = openEventMap({
  event: 'next',
})

Open Day

On-Demand
ts
import { openDay } from 'protocol-launcher/timepage'

const url = openDay({
  day: '2026-03-30',
})

Open Week

On-Demand
ts
import { openWeek } from 'protocol-launcher/timepage'

const url = openWeek({
  week: 'this',
})

Numeric offsets are also supported by the official index parameter:

On-Demand
ts
import { openWeek } from 'protocol-launcher/timepage'

const url = openWeek({
  week: -1,
})

Open Month

On-Demand
ts
import { openMonth } from 'protocol-launcher/timepage'

const url = openMonth({
  month: 'next',
})

Open Weather

On-Demand
ts
import { openWeather } from 'protocol-launcher/timepage'

const url = openWeather({
  day: 'today',
})
On-Demand
ts
import { openWeather } from 'protocol-launcher/timepage'

const url = openWeather({
  week: 'next',
})
On-Demand
ts
import { search } from 'protocol-launcher/timepage'

const url = search({
  query: 'project review',
})

Get Event

On-Demand
ts
import { getEvent } from 'protocol-launcher/timepage'

const url = getEvent({
  event: 'next',
  xSuccess: 'shortcuts://callback',
})

Timepage calls the x-success callback with start, end, title, and location parameters.

References