Skip to content

ricburton/MacCam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MacCam

A lightweight macOS menu bar app that displays live webcam feeds from Bay Area mountaintop cameras and fog.today in a floating panel.

MacCam screenshot

Features

  • Menu bar app — lives in your menu bar, opens as a floating panel with a single click
  • Local tab — fog.today satellite view alongside 4 key Bay Area cameras (Bolinas, Mission Peak, Mt Diablo, Mt Tam)
  • More tab — 8 randomly selected cameras from a pool of 32+ AlertCalifornia cameras within 50 miles of San Francisco, shuffled each time you open the tab
  • Timelapse playback — animates the last hour of frames for every camera
  • Time travel — switch between live timelapse, current frame, and 1-hour-ago snapshot
  • Background preloading — all camera data is fetched and cached at launch and refreshed every 60 seconds, so everything loads instantly
  • Logo removal — on-device image cropping removes camera overlay logos
  • Click-to-open — tap any camera to open its full AlertCalifornia page
  • iOS-style UI — squircle (continuous corner radius) rounded rectangles on all image cells and the panel itself

Cameras

Pulls live feeds and timelapse data from:

Camera coverage spans SF, Peninsula, Marin, East Bay, South Bay, Santa Cruz Mountains, and Sonoma/Petaluma — all within roughly 50 miles of San Francisco.

Install

Download MacCam.dmg from Releases, open it, and drag MacCam to Applications.

Or build from source:

git clone https://github.com/ricburton/MacCam.git
cd MacCam
open MacCam.xcodeproj

Build and run in Xcode (macOS 13+).

Controls

Button Action
Timelapse Animate all frames from the last hour (default)
Now Show the latest frame, static
1 Hour Ago Show the oldest cached frame (~1 hour ago), static
Refresh Re-fetch all camera data immediately

Tech

  • Pure Swift + SwiftUI hosted in an AppKit NSPanel
  • borderless + nonactivatingPanel style for menu bar popover behavior
  • CALayer.cornerCurve = .continuous for iOS-style squircle on the panel
  • Ephemeral URLSession with cache-busting for fresh frames
  • AlertCalifornia timelapse API (1min/1-hour.json) for frame sequences
  • CGImage cropping to remove camera logos (top 6%, bottom 3.5%)
  • Singleton CameraCache with background preloading and 60s refresh timer

License

MIT

About

macOS menu bar app for live Bay Area webcam feeds — fog.today + AlertCalifornia cameras with timelapse, background preloading, and squircle UI

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages