After shipping v1 in a day, I pushed Moon toward a tool I actually use daily: UI polish, safer flows, MP4 export, and an open-source release on GitHub.

Moon stays a local-first macOS screen recorder — no cloud, no SaaS. Install the app, record, get a file in Downloads. It’s my personal Loom alternative with a webcam bubble I fully control.

What changed since v1

Redesigned Dynamic Island: pause, green ✓ to save, red ✕ to discard (with confirmation), and a background-blur toggle for the webcam.

Webcam bubble visible during the 3-second countdown — not only once recording starts — so you can position yourself first. The bubble is draggable during the session.

MediaPipe selfie segmentation: sharp subject, adjustable background blur, no white halo around your head. Subtle motion on countdown, island and bubble.

Auto MP4 export to Downloads (ffmpeg-static), Moon logo in the menu bar, and clicking the tray icon opens the menu instead of instantly recording — you must choose “Record”.

Technical stack

Electron 34 + React 19 + TypeScript, electron-vite, MediaPipe tasks-vision for blur, MediaRecorder + canvas for screen capture, ffmpeg-static for WebM → MP4.

Multi-window architecture: main process (tray, overlays, IPC, moon:// protocol for MediaPipe in production), preload bridge, React renderer for countdown, Dynamic Island, webcam bubble and hidden recording engine.

arm64 DMG packaging (~140 MB). macOS camera / mic / screen-recording permissions required.

Open source

Code is public on GitHub: https://github.com/alkhastvatsaev/moon — MIT license, contributions welcome. Clone, npm install, npm run dev to run locally, npm run package:app to build the .app.

Still not an App Store product or hosted service: a personal tool I’m sharing because the problem (record screen + face locally, no subscription) is universal.

Next steps

Global shortcut, capture history, quality settings, maybe window-only mode. If you try Moon or you’re hiring a junior fullstack who also ships desktop (Electron, native permissions, packaging), portfolio and contact: https://alkhastvatsaev.dev — alkhastvatsaev@icloud.com