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
From the first request to the invitation.
- 01
Overview
The dashboard shows upcoming events, counts by status and every open conflict. It refreshes every 30 seconds.
- Stats
- Upcoming
- Conflicts
- 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
- 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
- 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
- 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
- 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
- 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







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)
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”.
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
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.
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
