← All articles

Article

Rebuilding alpine-code.com on Nuxt 3

Why we rebuilt the company site from scratch — and what changed in the process.

Alpine Code

The old alpine-code.com was a Nuxt 2 single-page app, fronted by a GraphCMS-powered content layer and a Bootstrap theme that had outlived its usefulness. It still worked, but it had become hard to ship anything quickly without first wading through the build.

We took a weekend to rebuild it on Nuxt 3 with a clean slate.

What changed

A few decisions worth calling out:

  • Nuxt 3 in SSR mode instead of a generated SPA. Server-rendered HTML on the first byte means cleaner SEO, faster perceived load, and no hydration jank on slow links.
  • Tailwind CSS instead of a third-party Bootstrap theme. We dropped roughly six thousand lines of vendor CSS in favor of utility classes and a small typographic system.
  • @nuxt/content for articles, instead of GraphCMS. Markdown files in the repo, version-controlled like everything else.
  • English only, for now. The old site shipped four locales; in practice we maintained one. The new site is honest about that.
  • Dark mode by default, with a light-mode toggle. Most of our team works in the dark.

Aesthetic notes

We borrowed the visual language from our sister site zenzo.ch: zinc neutrals, a single orange accent, JetBrains Mono for the small labels, and a sense of restraint that we think suits engineering work better than a hero video does.

Nothing here is finished. The next iterations will bring case studies, deeper service write-ups and — yes — more posts.

What stayed

The brand. The logo. The address in Lausanne. The phone number. The team and the work we do for our clients.

The site is just a window into all of that.