Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shelf

A clipboard manager for macOS. Hit Cmd+Shift+V or click the tray icon.

I just didn't feel like this was a thing that should cost money. Now it doesn't anymore.

Preview

B39A5D5D-60D0-4B77-AA18-BACEC7DA2C42

What it does

  • Monitors your clipboard — text, URLs, images
  • Cards show a preview, a title (file path with the filename bolded), and a timestamp
  • Re-copying something moves it to the front instead of duplicating it
  • Tracks where items were displaced from, so you can peek at old neighbors (click twice - not exactly double click, just... twice.)
  • Space bar opens native Quick Look on the selected card
  • Arrow keys to navigate, Return to paste, Delete to remove
  • Starts on login automatically
  • Lives in the menu bar, stays out of your way

Building

Needs Rust and Xcode command line tools.

cargo xtask build

App lands in build/Shelf.app.

Installing

cargo xtask install

Builds, kills any running instance, drops it into /Applications, opens it.

Debug build

cargo xtask debug

Release

cargo xtask release-all

Builds for Apple silicon and Intel, signs each with your Developer ID, wraps each in a drag-to-Applications DMG, notarizes and staples. DMGs land in build/release/.

Signing picks the first Developer ID Application identity in your keychain; SHELF_SIGN_ID overrides it. Notarizing needs APPSTORE_API_KEY and APPSTORE_API_ISSUER set, with the matching .p8 in ~/.appstoreconnect/private_keys/. Without a signing identity the build still runs and the DMGs come out unsigned.

Structure

core/       Rust — clipboard monitoring, SQLite storage, FFI exports
bridge/     C header bridging Rust to Swift
src/        Swift — UI, panel, app lifecycle
resources/  Icon SVG, Info.plist
scripts/    Build, install, and release scripts
xtask/      Rust — the cargo xtask front end for scripts/

Author

pszsh - My Half-Assed blog. Email: jess@else-if.org

About

I remade the "Paste" app with mostly Swift native and a bit of Rust. Felt' such a simple thing ought to be free for all. Or at least all Mac users.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages