Modern SQLite & SwiftData viewer for macOS.
Native SwiftUI · Live reload · Built for iOS developers
🚧 Pre-alpha — v0.1.0 is under active development.
|
📂 Open any SQLite store
Drag & drop or ⌘O for 🗂 Browse tables and rows 3-column split view — sortable, resizable, dynamic. 🔄 Live reload Auto-refresh on file change, fully WAL-aware. 🔒 Read-only by design Your databases are never written to. |
📱 Simulator auto-discovery One click to open any installed iOS simulator app's DB. 🍂 SwiftData native
Automatic 🎨 Native macOS feel Sky Blue × Sunset Orange palette, dark mode first-class. ⚡ Built in SwiftUI + TCA Modern reactive stack — snappy, testable, observable. |
| Version | Needed for | |
|---|---|---|
| macOS | 26 Tahoe or later | Running the app |
| Xcode | 26 or later | Building from source (B, C) |
| Homebrew | latest | Installing xcodegen, create-dmg (B, C) |
GitHub CLI (gh) |
optional | Auto-star after make install (C) |
Three paths depending on who you are. End users go with A. Developers who want to build from source pick B (Xcode GUI) or C (command line).
Skip this block if you only plan to use path A.
1. Install Homebrew (macOS package manager):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"2. Install Xcode 26+ — from the Mac App Store or Apple Developer portal. After installing, register the command-line tools:
sudo xcode-select -s /Applications/Xcode.app
xcodebuild -license accept # accept the SDK license3. Install build helpers:
brew install xcodegen create-dmg4. (Optional) Install GitHub CLI — enables the one-click star prompt at the end of make install / make dmg:
brew install gh
gh auth login-
Grab
Storefront-*.dmgfrom the Releases page -
Double-click the DMG → drag
Storefront.appintoApplications -
First launch — bypass Gatekeeper (pick whichever is easiest):
Option 1: Finder (simplest)
- In
Applications, right-clickStorefront.app→ Open → Open - On macOS 15+ you may also see a button under System Settings › Privacy & Security › "Open Anyway" — click it once.
Option 2: One-liner in Terminal
xattr -cr /Applications/Storefront.app
Afterwards the app opens on regular double-click forever.
Option 3: Strip the quarantine attribute from the DMG before mounting
xattr -d com.apple.quarantine ~/Downloads/Storefront-*.dmg
- In
Why the warning? Storefront ships without Apple notarization because it is a pure open-source side project — no Apple Developer Program ($99/year) is involved. The source on GitHub is exactly what you run.
Requires the prerequisites above (Homebrew, Xcode, xcodegen).
git clone https://github.com/jun7680/Storefront.git
cd Storefront
xcodegen generate # regenerate the .xcodeproj (it is gitignored)
open Storefront.xcodeproj # then press ⌘R in XcodeFirst build only: Xcode will prompt "Trust & Enable" for the TCA macro plugins (
ComposableArchitectureMacros,CasePathsMacros,DependenciesMacros,PerceptionMacros). Click Trust & Enable for each — this is a one-time security prompt.If Xcode blocks every build with a macro error, disable macro fingerprint validation globally (then restart Xcode):
defaults write com.apple.dt.Xcode IDESkipMacroFingerprintValidation -bool YES defaults write com.apple.dt.Xcode IDESkipPackagePluginFingerprintValidatation -bool YES
Requires the prerequisites above.
git clone https://github.com/jun7680/Storefront.git
cd Storefront
make build # Debug build
open build/Build/Products/Debug/Storefront.app # launch itOr copy the Debug build directly into /Applications:
make install # builds and copies to /Applications/Storefront.appWant the distributable DMG locally?
make dmg # → build/Storefront-0.1.0.dmg
open build/Storefront-0.1.0.dmg # mount and verifyBoth make install and make dmg finish with an opt-in star prompt — if you answer y and have gh authenticated, Storefront will be starred on your behalf; otherwise it opens the repo in your browser.
| Command | What it does |
|---|---|
make setup |
Install xcodegen and create-dmg via Homebrew |
make generate |
Regenerate Storefront.xcodeproj from project.yml |
make build |
Debug build |
make install |
Debug build → copy to /Applications/Storefront.app |
make test |
Run unit tests |
make archive |
Release archive with ad-hoc codesign |
make dmg |
Full archive + package build/Storefront-<version>.dmg |
make icon |
Regenerate AppIcon.appiconset (SF Symbol placeholder) |
make star |
Opt-in GitHub star prompt (uses gh if logged in, else opens browser) |
make clean |
Remove build/ and derived data |
Built with The Composable Architecture (TCA). Every feature is a @Reducer + @ObservableState pair composed into the root AppFeature via Scope. Side effects — DB reads, file watching, simulator scanning — are isolated behind @Dependency clients and unit-tested with TestStore.
Storefront/
├── App/ # Entry point (StorefrontApp)
├── Features/ # TCA features — App, Welcome, Browser, SimulatorPicker
├── Dependencies/ # DatabaseClient, FileWatcherClient, SimulatorClient
├── Core/ # UI-agnostic domain — GRDB SQLite + SwiftData parsing
└── Resources/ # Assets, entitlements, Info.plist
See Docs/PLAN.md for the full design doc and Docs/PROGRESS.md for phase status.
- v0.1.0 — core viewer MVP (SQLite + SwiftData + live reload + simulator scan)
- v0.2.0 — custom app icon, SQL read-only console, Homebrew Cask
- v0.3.0 — export to CSV/JSON, BLOB image preview, column filters
Issues and PRs are welcome. This is my first open-source project, so please be gentle 🙏. For substantial changes, open an issue first so we can align on direction.
MIT © 2026 Injun
Built with 💙 and ☀️ on macOS
If Storefront saves you a few minutes, give it a ⭐ — it really helps.