Min Skuta — a digital lots for Swedish recreational boat owners | LUSTECH
Min Skuta #
A digital lots for Swedish recreational boat owners — solo or in co-owner groups of 2–4. Built by LUSTECH, in closed beta as of May 2026, public launch ahead of the 2026 season.
The problem #
Boat ownership in Sweden has a few stubborn realities that the existing tooling ignores:
- Maintenance is seasonal, but the calendar isn’t the right unit. A 40-hour engine year on a small displacement diesel needs different attention than a 200-hour year, and neither maps to a generic “spring checklist”.
- Co-ownership is common (a 2–4 person syndicate splitting a boat is cheaper and more used) but the tools assume a single owner. Someone ends up as the de-facto admin and the others fly blind.
- Service logs live in paper books that vanish the moment the boat changes hands. The next owner inherits a hull and a question mark.
- The few apps that exist demand everyone install something and create an account before anything useful happens.
We wanted a tool we would actually use ourselves through a season.
The approach #
Three constraints shaped everything else:
- Web-first, no app install. Means a page that opens in a browser, works on a phone in a marina, and doesn’t need an app store update before the launch weekend.
- The service log follows the vessel, not the owner. Means a data model where the boat is the durable thing, ownership is a relationship, and selling a boat hands the new owner the entire history — not a screenshot.
- Built for co-ownership from day one. Means roles, shared accounting that settles at season end, and no assumed admin. Everyone sees the same picture; anyone can log a service.
The first one rules out the native-app route. The second rules out the “your account owns the data” pattern most SaaS defaults to. The third rules out bolting on multi-user later.
Stack #
- Next.js 16 (App Router) on React 19, TypeScript strict
- PostgreSQL + Prisma for the data model; Auth.js v5 for passwordless email auth
- Tailwind v4 + shadcn/ui; an editorial Nordic design system (Fraunces + Inter, paper/sea/brass tokens) built for the marine context rather than generic SaaS
- Hexabyte S3 for object storage — EU-hosted, no cross-border data transfer for photos and documents
- Resend + React Email for transactional mail; MDX for the public knowledge base
- Self-hosted on Coolify, single VM, nightly
pg_dump+ weekly offsite mirror, forward-only migrations gated as a pre-start container hook - Self-hosted Umami for analytics with custom server- and client-side events — no third-party trackers, no cookie banner
Outcome #
- Live at minskuta.se in closed beta as of May 2026, public launch ahead of the 2026 season.
- Public landing page + MDX knowledge base + onboarding wizard + service log + seasonal phase planner (winter, launch, season, preparation).
- SEO foundation in place: canonical/OG metadata,
ArticleJSON-LD, dynamic OG images vianext/og, sitemap with article dates pulled fromgit log. - Privacy-first by construction: data lives in EU infrastructure, no third-party trackers, the only cookies are session.
Why this lives on the LUSTECH site #
Min Skuta is the second project in the LUSTECH Lab. Where MachStruct sharpened our muscles on native macOS and parser performance, Min Skuta sharpened a different set: bleeding-edge web stack (Next.js 16, React 19, Tailwind v4), an honest multi-tenant data model with shared ownership baked in, self-hosted infrastructure with the operational discipline a paying user deserves, and product judgment about what not to ship in the MVP. The same engineering bar shows up when we deliver to clients.