// the find
darkroomengineering/satus
Advanced Next.js App Router starter for content-driven sites
Satus is an opinionated Next.js 16 starter aimed squarely at content-driven marketing and creative sites — think agency work with a CMS, heavy animation, and sometimes a Shopify storefront. It's not a general-purpose scaffold; the comparison table in its own README is upfront that things like auth, payments, and a database are explicitly out of scope.
The encrypted .env-in-git approach via dotenvx is a genuinely clever fix for the usual 'starter template secrets' problem — one committed file, per-fork keys, and a test that fails the build if a value is ever committed in plaintext. The opt-in integrations architecture (Sanity/Shopify/HubSpot/Mailchimp isolated under lib/integrations, WebGL gated behind lib/features) plus a setup:project script that strips what you don't need is the right way to keep a kitchen-sink starter from becoming bloat. Test rigor is unusually high for a template: unit tests via bun test, Playwright e2e with accessibility assertions, CI quality gates, and an asset-weight budget — most starters have none of this.
It demands a bleeding-edge toolchain (Node >=24.20, Bun >=1.4, Next 16, React 19) which will be friction for teams not already on that stack, and the oxc/Bun combo means you're betting on tooling that's newer and less battle-tested than the eslint/npm status quo. The dotenvx encryption layer is clever but also a new failure mode to learn — lose the private key and you lose every secret, and onboarding a new dev now means walking them through a key-exchange step instead of just copying a .env.example. The animation/WebGL stack (GSAP, Lenis, Theatre.js, R3F) is significant surface area and bundle weight if your project doesn't actually need motion-heavy pages — you're paying for a niche you may not be in. No auth, payments, or ORM means for anything beyond a brochure/CMS site you're integrating all of that yourself anyway, on top of absorbing this template's own conventions first.