Skip to content

WhiteCapMusic Lab · Band organisation

BAND
CAL

BandCal is a desktop calendar for bands: members, blocked dates and gigs in one place. Conflicts show up before you say yes, events land via iCloud in a calendar you see on all your devices, and invitations go out to the band by email.

Windows · German interface · Open source · v0.3

01Teaser

46 seconds. All of band planning.

Video without sound · 46 s · everything shown is also in the text of this page

02How it works

From the first request to the invitation.

  1. 01

    Overview

    The dashboard shows upcoming events, counts by status and every open conflict. It refreshes every 30 seconds.

    • Stats
    • Upcoming
    • Conflicts
  2. 02

    Members

    Every member has a role, an instrument and an email address. Their own calendar feed brings private appointments in as blocked dates.

    • Manager
    • Musician
    • Crew
    • Calendar feed
  3. 03

    Blocked dates

    The matrix shows one month for all members: red bars are blocked dates, weekends are shaded. There is also a calendar view with a legend.

    • Matrix
    • Calendar
    • Role filter
  4. 04

    Events & conflicts

    Gig, rehearsal, meeting or other. If an event overlaps a blocked date, a warning with the member’s name appears right next to it.

    • Gig
    • Rehearsal
    • Meeting
    • Conflicts
  5. 05

    Calendar

    Week, month and year. In month view, blocked dates sit as red bars above the events, dashed outlines mark options and contracts.

    • Week
    • Month
    • Year
  6. 06

    iCloud import

    Events from a connected iCloud calendar can be taken over one by one or in bulk. If an event changes in iCloud, BandCal flags it.

    • CalDAV
    • Forward
    • Changes
  7. 07

    Invitations

    Invitations go out by email with an ICS attachment to every assigned member, with progress per recipient. Optionally, BandCal asks on sync whether the invitations for new, changed and cancelled gigs should go out right away (you choose which event types are included), as long as SMTP and iCloud are connected.

    • SMTP
    • ICS
    • Auto-send
BandCal · Overview
01 / 07 · Overview
03Status

From option to confirmed.

Every event has a status with its own colour, in the list, in the event details and on the dashboard. In the calendar you can spot options and contracts by their dashed outline.

Release-Party · list and calendar week (app UI in German)

Conflicts on the event

In the list and on the dashboard BandCal names the members when there are one or two conflicts; from three on it shows “N blockiert”.

04Sync

Enter it once. Up to date everywhere.

One click on “Alle Feeds synchen” pulls blocked dates from the members’ feeds and matches events with your iCloud calendar. With auto-send switched on, BandCal offers to send the invitations along with it.

  • Blocked dates from members’ calendar feeds
  • Sync with the iCloud calendar via CalDAV
  • Invitations with ICS attachment by email
05Tech stack

What runs under the hood.

  • Desktop

    Tauri 2.0

    Native desktop app, shipped as a Windows installer (.msi / .exe).

  • Interface

    React 19

    TypeScript, light and dark mode, keyboard shortcuts.

  • Backend

    Rust

    Commands for database, mail and HTTP.

  • Data

    SQLite

    Stored locally, location and backups configurable.

  • Calendar

    CalDAV

    Connection to the iCloud calendar.

  • Mail

    SMTP

    Invitations and cancellations with ICS attachment.

06FAQ

Frequently asked questions.

You can get the Windows installer (.msi or .exe) and the source code on GitHub at whitecapmusic/bandcal.

No. One person runs BandCal, for example the manager. Members get invitations by email with an ICS attachment, and their own calendar can be added as a feed.

No. The iCloud connection is optional. Members, blocked dates, events and conflict detection all work without it.

Locally on your computer in an SQLite database. You choose the location and backups in the settings.

BandCal marks the event with a warning and shows who is blocked and why. You are also warned when sending the invitation. The decision stays with you.

Curious? The code is open.

BandCal is on GitHub. Take a look, try it out, or drop me a line if you have questions.

github.com/whitecapmusic/bandcal