README.md

3.2 KB · raw

rendered · source

Haven

A lightweight macOS menu bar app for finding, setting, and managing desktop wallpapers. Browse Wallhaven without leaving the menu bar, set any image as your wallpaper with a click, and keep a local library of the ones you download.

Features

Requirements

No Wallhaven API key is required — Haven uses the public search API and browses SFW and Sketchy content only.

Build & Run

Build a signed .app bundle and launch it:

./bundle_app.sh
open Haven.app

Or run directly during development:

swift build
swift run

Run the full test suite and the checked-in 100% physical source-line coverage gate:

bash coverage.sh

The coverage command combines swift test --enable-code-coverage with a smoke run of the executable so the real entry point is measured. Its physical source-line gate excludes blank, comment-only, and structural brace lines; the LLVM aggregate report printed above it also includes compiler-generated SwiftUI mappings and can therefore be lower.

Haven lives in the menu bar (it has no Dock icon). Click the menu bar icon to open the popover.

Usage

Tab What it does
Explore Search and browse Wallhaven. Use the slider icon to filter.
Local Browse wallpapers saved to your local folder.
Favorites Wallpapers you've hearted.
History Recently set wallpapers.
Settings Launch at login, local-save toggle, and save-folder location.

By default, downloaded wallpapers are saved to ~/Pictures/Haven. Change this in Settings → Storage → Location.

Project Layout

Sources/Haven/
  API/          Wallhaven client and response models
  Managers/     Wallpaper, local library, favorites, history, autostart, cache
  UI/           AppState, menu bar controller, and SwiftUI views
  main.swift    Entry point

License

Haven is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. See LICENSE for the full text.

Haven — a macOS menu bar app for browsing, setting, and managing wallpapers.
Copyright (C) 2026 Asha Software