selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Someday logo

Self-host Someday

1.0.0

Free calendar availability picker for Gmail users

ReleaseOpen SourceMIT
Updated3 months ago
LanguageTypescript
Setup difficultyModerate
ThemeDark mode
Stars
1 063
Requires
Google Apps Script

What is Someday?

Someday is an open-source scheduling tool for Gmail users who want a free, self-hosted alternative to Calendly. It runs as a Google Apps Script deployed to your own Google account, connecting directly to Google Calendar to show availability and book appointments. The frontend is built with modern web technologies while the backend runs on Google Apps Script deployed via clasp. You can customize work hours, time zones, and which calendars to check. The booking page includes dark mode and works on mobile devices. No separate server or database is required — everything runs on Google's infrastructure.

Should you self-host Someday?

Someday scores 50/100 on selfhost.directory (how scoring works) and ranks #15 of 30 in Calendar & Contacts. It has 1 063 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Cal.dyi (81/100, 49 478 stars). It scores higher overall, so compare the two before you pick. See Someday vs Cal.dyi side by side.

Features

  • Free hosting on Google infrastructure

Someday README

How to configure Someday

  • CALENDARSprimaryComma-separated list of Google Calendar IDs to check for availability

    Comma-separated list of Google Calendar IDs to check for availability

    values: JSON array of calendar ID strings

  • DAYS_IN_ADVANCE28How many days ahead to show availability

    How many days ahead to show availability

    values: Number of days

  • TIMESLOT_DURATION30Duration of each booking slot in minutes

    Duration of each booking slot in minutes

    values: Number of minutes

  • TIME_ZONEAmerica/Los_AngelesTime zone for availability calculations

    Time zone for availability calculations

    values: IANA time zone identifier

  • WORKHOURS{start: 9, end: 16}Start and end hours for available booking slots

    Start and end hours for available booking slots

    values: Object with start and end hour numbers

More in Calendar & Contacts

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…