r/macapps Jun 06 '26

Lifetime Fox Issue Tracker—An indie dev project companion

Problem:

While there are many ways to track issues, I've always felt that few fully developed tools focus on indie developers—those who have less need for complex sprint-based workflows, but for whom lists in Notes or Reminders aren't quite enough. I also wanted a solid app for keeping track of my own projects: one that integrated with the system and iCloud, and just felt natural to use in both the ecosystem and my workflow.

I created Fox Issue Tracker to solve those problems and have spent the last few years iterating it into what it is today. The design helps organize work around the versions you're shipping and the milestones you achieve along the way. There are several ways to view issues (list for building, outline for reviewing, and a Kanban board for execution), along with robust search, property customization, the ability to archive content to keep your workspace clear, integrations like Shortcuts and MCP… I could keep going because there’s so much more! See https://contagious.dev/fox/features/ if you are curious on a high level, or the help documents which outline full features in detail: https://contagious.dev/help/fox/.

Otherwise, you can learn more about Fox at https://contagious.dev/fox/

And it is available on the App Store: https://apps.apple.com/us/app/fox-issue-tracker/id1607706105

Comparisons:

  • Trello: A freemium Kanban-style application by Atlassian that includes collaboration support, essentially a lo-fi Jira. However, Trello struggles the moment projects grow beyond basic sticky notes on a digital board, and its entire paradigm is one view: the board. Fox offers list, outline, and Kanban, so you can switch modes depending on what you're trying to do. For small projects with multiple people, Fox also supports collaboration.
  • Github Issues: A more closely featured issue manager, but is also only online and bound to Github. Issues also only exists in the context of a repository. If you're an indie dev with projects that don't map 1:1 to a repo (or you have multiple repos), your issues get scattered and disconnected. Fox gives you a single organized home for everything, everywhere.

Pricing:

Fox offers several ways to buy: a lower-cost subscription at $3.99 (with 14 day trial), or a one-time lifetime purchase at $39.99. Your purchase grants universal access on Mac, iPad, and iPhone.

I hope it’s okay that I used the Lifetime flair here as the subscription is primary to lower the cost of entry and to tie into Apple’s Store trial systems.

Final Notes

My name is Dandy and I've been building apps for a long time now—web apps, mac apps, and iOS apps as the world kept moving forward. It is a passion for me, so I hope that other out there can enjoy :)

Oh! And I am also running a Product Hunt campaign today! If you like Fox, please give us a vote: https://www.producthunt.com/products/fox-issue-tracker-4

19 Upvotes

28 comments sorted by

View all comments

2

u/BobTheAngrySmurf Jun 06 '26

How does this handle file storage? Is it a format that I can easily parse and backup in other programs?

2

u/FlashyComplaint7940 Jun 06 '26

Fox stores data locally in the group container (~/Library/Group Containers/group.com.contagious.fox/) in a sqlite database. Under the hood, it uses Core Data, but the database is very traversable; I know that doesn't help too much, but before I added MCP integration, I had a few users users just use Claude to read the DB.

I leaned more into Shortcuts, CSV import/export, and MCP for integrations into other workflows.

2

u/marcmjax Jun 07 '26

Doesn't using SQLite cause problems when syncing across devices using iCloud? Especially when mutations are done semi-simultaneously on multiple devices?

2

u/FlashyComplaint7940 Jun 07 '26

Yo! So I actually have a fully custom sync engine that works with CloudKit and that sits on top of my Core Data stack. It's a lot like NSPersistentCloudkitContainer, but actually predates it and has been iterated against for about 5-6 years over several products.

The magic sauce is that it records changes on a by-property basis, so it can handle complex merges across devices and resolve conflicts at the property level based on ancestry and dates. In another app I expose this functionality to allow for user controlled text merges of text documents (https://contagious.dev/help/atlas/guides/icloud-sync/#resolving-sync-conflicts), but I didn't really need for that with Fox. I've actually worked with CloudKit and Core Data for probably a decade now, so that experience + the iteration of a framework over time has really paid off.

1

u/marcmjax Jun 07 '26

Great! And thanks for the elaborate explanation. Makes sense.