Most of what I build runs on Laravel, in a browser, on a server somewhere. Spartacus Press is none of those things, and that’s the point of it.
It’s a small macOS app for preparing posts for the Spartacus Insights LinkedIn company page. Each post keeps its text, notes, attachments and planned date in one place, and moves between Not ready, Ready and Planned. It doesn’t publish anything to LinkedIn. A planned date is an intention, nothing more.

Why build it at all
The honest answer is that I wanted a reason to work with technologies I don’t use in my day job, and a real, small problem is a better teacher than a tutorial.
Writing posts for a company page is a narrow enough problem to finish, and it has a few awkward parts: drafts that change after approval, images that need to live somewhere reliable, a preview that should look roughly like the feed. That was enough to push me into areas I wouldn’t otherwise touch.
What it’s built with
- Tauri for the desktop shell, instead of Electron
- Rust for the storage layer, which owns a local SQLite library
- React and TypeScript for the interface
- Tiptap with a deliberately restricted schema, so the editor stores plain text
Rust is the part furthest from my comfort zone. Having it own the data, with transactions and version checks, forced me to think about the store as its own thing rather than something the UI happens to write to.
What it isn’t
It isn’t a product, and I’m not planning to sell it. It’s a research experiment that happens to be useful to the team. Some native behaviour still needs manual checking on macOS, and the LinkedIn publishing side is undecided and may stay that way.
I’ll write up what I learned once I’ve lived with it for a while. For now, it’s a reminder that stepping outside the stack I know is still the quickest way to see what I’ve been taking for granted.