Keep your Skylight Calendar useful with the Apple Photos, Reminders, and recipes you choose on your Mac.
macOS 26+ • opt-in mappings • Swift 6.2
Skylight Bridge is a native macOS app for households that use a Skylight Calendar alongside Apple Photos, Apple Reminders, and Apple Notes. It mirrors only the albums, lists, folders, recipes, and individual photos you explicitly select. Photos remain one-way from Apple, while Reminders, recipes, and chores can be linked in both directions.
Skylight Bridge is independently maintained and uses a private Skylight API that can change without notice. The repository includes Developer ID packaging, notarization, and signed-update scripts. See the release assets for a distributable build.
Skylight works best when it reflects the household's actual routines. The trouble is that those routines usually already live elsewhere: the family photo library, a Reminders list, a recipe folder, or the chore chart everyone checks on a phone.
Without a bridge, keeping a Skylight Calendar current means maintaining the same information twice. Skylight Bridge handles the repeat work while leaving control with the person who owns the Apple data. A shared screen stays useful, and no one has to upload the same photo or retype the same task again.
This is a practical Mac utility, not a second household database. Every mapping is opt-in, and the Activity screen gives you a clear record of what the bridge changes.
- Go to the latest macOS release and download the
.dmgfile. - Open the downloaded disk image and drag Skylight Bridge into Applications.
- Open Skylight Bridge from Applications.
- The app checks for signed updates, and Skylight Bridge > Check for Updates… is always available when you want to check manually.
The source version is 1.7.3. Its OAuth implementation uses Proof Key for Code Exchange (PKCE), passing a code challenge during authorization and its verifier during token exchange. Current release notes and downloads are on GitHub Releases.
One Mac workspace for the selected parts of your Apple life that belong on a shared Skylight Calendar.
- Open Account and sign in to your Skylight account. The app finds available frames and devices.
- Add and enable the source you want in Photos, Reminders, Chores, or Recipes. Grant only the Apple permissions that source needs.
- Select Sync Now, then use Activity to review the result. The overview always shows which sources are ready to sync.
The menu bar keeps the app close at hand. It shows sync status, runs a sync when the app is ready, and directs you to sign in, configure a mapping, or inspect Activity when that is the next useful step. You can also run sync automatically every 10 to 240 minutes, launch the app at login, or keep it in the menu bar without a Dock icon.
Map an album, folder, shared album, Favorites, another smart album, or selected individual photos to a Skylight album. You choose exactly what is included, so Skylight Bridge never uploads the whole library.
The app renders edited RAW, ProRAW, HEIC, HDR, and wide-gamut assets as displayable sRGB JPEGs. For individually selected photos, Apple Intelligence can create a concise name on your Mac after the picker closes. That local name becomes the caption on the bridge-linked Skylight copy without renaming or changing the photo in Apple Photos.
Apple Photos remains one-way to Skylight. The bridge never edits or deletes the original photo library. Generated selected-photo names are local bridge labels, not Apple Photos titles, and are published only as captions on bridge-linked Skylight copies. For a selected photo, the bridge can remove only the Skylight copy that it created and recorded as its own.
Map an entire list or selected reminders in either direction. Two-way mappings preserve additions from both sides, adopt matching items instead of duplicating them, and keep linked list titles and colors in sync after the first baseline. If the same field changes in both places, the mapping follows your selected conflict policy.
Renaming a linked list does not break the mapping. Skylight Bridge retains the relationship and updates the list already connected on the other side.
Map a recipe folder or selected recipe notes to Skylight's Recipe Box. Skylight Bridge parses each recipe into its title, description, servings, prep and cook times, ingredients, instructions, tags, and source URL.
With the Automatic recipe setting, Apple Intelligence runs on your Mac to choose the best existing Skylight category and add a fitting emoji when the title needs one. Recipe content stays on the Mac for this classification. If Apple Intelligence is unavailable, the recipe still syncs without automatic classification.
For two-way recipe sync, Skylight Bridge can create notes from new Skylight recipes and update linked notes after changes. It formats those notes with a title heading, section headings, native ingredient bullets, and numbered instruction lists. Notes with attachments are never rewritten.
Connect the Skylight Chore Chart with an Apple Reminders list for each selected household member. The app creates or reuses the list and keeps the mapping two-way.
Recurring chores remain recurring in Reminders. Completing or reopening a chore on either side updates that day's occurrence on the other.
| Setting or safeguard | How it works |
|---|---|
| Selection | Nothing syncs until you create and enable a mapping. Unselected albums, lists, notes, folders, and photos stay out of scope. |
| Preview mode | The app plans and logs changes without applying them until you explicitly switch to live sync. |
| Deletion | Bridge-managed cleanup is limited to Skylight records the app created or explicitly adopted. It does not delete manual Skylight content. |
| Photos privacy | Exports use the current edited appearance, preserve aspect ratio, convert to sRGB JPEG, and remove GPS and XMP metadata by default. |
| Notes safety | Apple Notes change only when you explicitly enable two-way recipe sync. Notes with attachments are never rewritten. |
| Selected-photo names | On supported Macs, Apple Intelligence generates a name only after you have finished selecting the photo. The name stays with the local mapping, becomes the caption of its bridge-linked Skylight copy, and is never written to Apple Photos. |
| Credentials | Skylight credentials and OAuth tokens stay in the macOS Keychain, not in configuration files or logs. |
| iCloud | The private CloudKit database stores shared preferences and individual-photo mapping metadata. It never stores Skylight credentials or Apple Notes content. If iCloud sharing cannot save because its production schema needs deployment, the app keeps the local change and records a clear retry message in Activity. |
There is deliberately no calendar sync interface. Google Calendar already covers that need well. Routines and Task Box are also outside the product interface.
Skylight Bridge is a free Mac app. After it has actually applied 50, 500, 2,000, or 10,000 changes between your selected Apple sources and Skylight, it may offer a Buy Me a Coffee link. The prompt names the number of changes it has completed, appears only while the app is connected and idle, and is spaced at least 30 days apart. Don't Ask Again turns it off permanently.
This is a Mac-only, optional support prompt. It uses the local sync total to show the value the bridge has delivered, and it does not use an App Store donation flow.
The iOS companion repository implements shared preferences and selected individual-photo mappings for iPhone, with private CloudKit reconciliation between the phone and Mac.
The Mac remains the Skylight authentication and synchronization engine. The iOS app does not implement Apple Notes folder access. The companion has its own source and release process. This Mac repository does not establish its current App Store or TestFlight availability.
| Requirement | Notes |
|---|---|
| macOS | macOS 26 or later |
| On-device selected-photo names | macOS 27 or later with Apple Intelligence available on the Mac. The rest of the app continues to run on macOS 26 or later. |
| Skylight account | Required to discover frames, devices, and destinations |
| Skylight subscription | Calendar Plus is required for photos and recipes. Basic lists and chores are included without Plus. See the subscription details below. |
| Apple permissions | Photos, Reminders, and Apple Events access are requested only for the sources you configure |
| Network access | Needed to connect to Skylight and download iCloud-only photo originals when selected |
Skylight Bridge is free. Skylight's own subscription requirements still apply to the features you use on your Calendar.
| Bridge feature | Skylight Calendar subscription requirement |
|---|---|
| Reminders linked to Skylight lists | Lists are a basic feature, included without Plus. |
| Chores linked to Apple Reminders | Basic chores are included without Plus. Chore rewards require Plus. |
| Apple Photos displayed on Skylight Calendar | Calendar Plus is required for the photo screensaver. |
| Apple Notes recipes in Skylight Recipe Box | Calendar Plus is required for meal planning with recipes. |
These requirements come from Skylight's subscription guide and Calendar Plus description, checked on October 7, 2026. The bridge does not unlock paid Skylight features. Private API access on an account without Plus has not yet been verified, so the table describes Skylight's feature requirements rather than a guarantee of every bridge operation on that account.
No. You choose each mapping. The app does not start with a whole-library import or a blanket list sync.
No. Apple Photos is source-only. Removing a photo mapping can remove a bridge-created Skylight copy, but it does not alter the original photo in Apple Photos.
No. The name is a local label for a hand-picked photo in Skylight Bridge. It is generated only after selection finishes, becomes the caption of its bridge-linked Skylight copy, and does not change the Apple Photos title, metadata, or library.
No. Skylight Bridge is an independent project by Oliver Ames. Skylight does not publish a supported public API, so changes on Skylight's side can affect compatibility.
The native iOS companion has its own source and release process. Check that project for its supported iPhone version and dated distribution records.
No. The product intentionally does not add a calendar sync layer where Google Calendar already provides one.
The developer-account migration is no longer being pursued. Oliver abandoned it on October 13, 2026 and requested removal of the paused local and remote branch and its worktree. The existing shipping identity is unchanged, and preparation remains reverted from main in 26ca980. The worklog archive preserves the earlier preparation and pause history; its former branch and checkout directions are historical.
The signing inputs below apply to the local build script:
| Variable | Required | Default | Purpose |
|---|---|---|---|
CODESIGN_IDENTITY |
For Developer ID signing | Oliver's matching installed identity when available | Sign the app bundle |
DEVELOPER_ID_PROFILE |
For Developer ID signing with CloudKit | Profile from an existing installed app when available | Authorize the CloudKit container |
The package manifest requires Swift 6.2 or later and macOS 26. Building also requires access to the private skylight-bridge-ios package and credentials for a signed local app. Features compiled for newer operating systems require an SDK that provides those APIs.
git clone https://github.com/oliverames/skylight-bridge.git
cd skylight-bridge
./script/run_tests.sh
./script/build_and_run.sh --verifyThe test suite covers sync planning, recurrence conversion, parsers, authentication, configuration compatibility, and API request contracts. The local run script builds and verifies the bundle. Review its selected signing identity and profile before using it.
For deeper technical detail, read the product specification and API evidence and compatibility notes.
All rights reserved. This repository is source available for evaluation and reference only. No license is granted to copy, modify, distribute, or operate the software without permission from Oliver Ames.
Built by Oliver Ames in Vermont • GitHub • LinkedIn • Bluesky
See Release Reporting for verified delivery gates, credentials, dry runs, and reporting-only retries.
