finds.dev← search

// the find

shurco/mycart

★ 354 · Go · MIT · updated Jun 2026

🛒 myCart - shopping cart in 1 file with card and cryptocurrency payment support

myCart is a self-hosted e-commerce binary written in Go that ships the admin panel (SvelteKit), the storefront, and a SQLite database all in one executable. It handles digital product delivery — files and license keys — with Stripe, PayPal, and two crypto payment providers built in. The target is someone who wants a small shop running on a single $5 VPS without touching a database server.

The single-binary deployment story is real: frontend assets are embedded via go:embed, SQLite is embedded, and the update command replaces the binary in place. No Postgres, no Node process, no reverse proxy required to get started. The litepay abstraction in pkg/litepay is a clean provider interface with proper test coverage per provider — adding a new payment gateway means implementing one interface, not untangling global state. Test discipline is solid: nearly every handler, model, and query file has a paired _test.go, and internal/testutil/testdb.go suggests tests hit a real database rather than mocks. The migration system is versioned SQL files with a separate fixtures layer for dev data, which makes schema evolution predictable.

SQLite's write concurrency ceiling will bite anyone whose store gets actual traffic — async crypto payment callbacks are especially likely to fight with checkout writes, and there's no guidance on WAL mode tuning or Litestream for backup. The project is pre-v1 and just went through a forced rename from litecart due to a trademark claim; the k8s manifest is still named litecart.yaml and the package namespace churn isn't finished, so adopters will be chasing breaking changes. It only handles digital goods — files and license keys — so physical inventory, shipping, and tax calculation aren't on the roadmap and would require building on top of the webhook system yourself. Multi-tenancy is structurally impossible: one SQLite file is one store, and nothing in the architecture supports running multiple storefronts from one deployment.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →