Skip to content

EnoughRepos puts your Git repositories in a folder on your Mac without downloading every full checkout first. Browse committed files in Finder, your editor, or the terminal; file contents arrive as you open them.

Add a Git remote, connect GitHub, or adopt an existing checkout. Download selected projects for offline work, and reclaim their space when the checkout can be recovered safely. The native Mac app is in beta.

Highlights

  • Browse without cloning everything
  • Keep selected checkouts offline
  • Work with ordinary Git

A catalogue you can work in

A growing collection of repositories creates two separate needs: finding a project and having its whole working copy ready. EnoughRepos starts with the first. Choose a root folder, browse organisation folders, and open committed files through the same Finder, editor, and terminal workflow you already use.

The root can contain a mixture of virtual repositories, ordinary downloaded checkouts, and existing projects adopted into the catalogue. GitHub discovery is optional. A remote URL or a local bare repository can also be added, so the collection follows where the code actually lives.

Listing, reading, and editing are different jobs

The filesystem separates directory information from file contents. Browsing tells you what is there; opening a file fetches its committed contents into a shared cache. Preparing writable Git storage happens when an edit or Git operation needs it. That distinction lets a quick look remain a quick look.

The implementation builds on a focused fork of Cloudflare’s ArtifactFS, with a native SwiftUI management window and background service. Finder actions connect the visible folder to operations such as preparing a checkout or keeping it downloaded. Previews and indexing can also open files, so those familiar system features may cause content to be fetched.

Make room without losing the work

Keep Downloaded creates an ordinary checkout for work that needs to remain available offline. It stays usable after EnoughRepos quits. Adopting a project preserves its existing checkout location and Git state, allowing the catalogue to include work already on the machine.

Reclaiming storage is a separate, deliberate operation. The app checks ownership and whether the local state can be recovered before removing managed data. Uncertain state blocks reclamation, and adopted originals are never removed. This is a central part of the product: convenience has to account for the edits and history already present.

A native Mac beta

EnoughRepos is available as a signed and notarised beta for Apple silicon and Intel Macs. Its bundled virtual folders use FSKit and require macOS 26 or later. The public repository includes the architecture and product contract alongside the application source.

Offline availability follows what has been downloaded. Keeping a checkout is useful for that project’s current work; it is not a promise that every remote branch or every piece of repository history has been fetched. The product’s documented boundaries make the difference visible.

Related writing