Generated page. Written from IdaMilk/website at commit 853ff5e on 2026-07-28.
Ida Milk Website
What is it?
The public marketing website for Ida Milk at idamilk.com — Nuxt 4 and Bulma, prerendered to static HTML, with a single serverless function handling the contact form.
Purpose
The company's public face: what Ida Milk does, its capabilities, news, and job openings, plus a way to get in touch.
How it Works
Nuxt 4 in hybrid rendering mode. Every page is prerendered to static HTML at build time; only /api/contact runs server-side. The result is a site that is almost entirely static files, with one small dynamic surface.
The content architecture is the notable decision: all site copy lives in one file, app/composables/useSiteContent.ts — nav links, capability specs, stats, testimonials, news links, job openings and contact details. Editing the site means editing that file, with no component markup changes. For a marketing site maintained occasionally by people who are not front-end developers, that is a sound trade.
Brand tokens are defined once in app/assets/scss/main.scss as Bulma variables plus CSS custom properties, with logo SVGs in public/logo/. This wiki takes its own brand colours and logo assets from that file — it is the single source of truth for the Ida Milk brand.
Contact form submissions go out through Resend.
Tech Stack
| Technology | Version | Purpose |
|---|---|---|
| Nuxt | ^4.4.8 | Framework, hybrid rendering |
| Vue | ^3.5.38 | Underlying framework |
| Vue Router | ^5.1.0 | Routing |
| Bulma (SASS) | — | CSS framework, brand-themed |
| @nuxt/fonts | ^0.14.0 | Galada + PT Sans / PT Sans Caption |
| @nuxt/icon | ^2.2.3 | Font Awesome 6, bundled locally |
| @nuxt/image | ^2.0.0 | Image optimisation |
| @nuxtjs/seo | ^5.3.0 | Sitemap, robots, schema.org |
| @vueuse/nuxt | ^14.3.0 | Composition utilities |
| Resend | ^6.12.4 | Contact form delivery |
| Zod | ^4.4.3 | Form validation |
Operations
Built with npm run build to dist/, deployed to Cloudflare Pages. wrangler.toml sets pages_build_output_dir = "dist".
Configuration is Cloudflare Pages secrets — names only:
| Variable | Purpose |
|---|---|
RESEND_API_KEY | Resend API key for contact email |
CONTACT_TO_EMAIL | Inbox receiving submissions |
CONTACT_FROM_EMAIL | Verified Resend sender |
The CONTACT_FROM_EMAIL domain must be verified in Resend, with the DNS records added in Cloudflare. Locally, .dev.vars (gitignored) supplies the same values.
One caveat about the documented hosting. The README describes deployment to Cloudflare Pages, and gives both a manual wrangler pages deploy path and a git-connected option. As of 2026-07-28 there is no Cloudflare Pages project for this site in either Ida Milk Cloudflare account — idamilk.com resolves to Cloudflare IPs, but it is proxied to some other origin rather than served by Pages. Verify how the live site is actually deployed before relying on the README's instructions.
Repository
| Repository | IdaMilk/website |
| Version | 0.0.1 |
| Primary language | Vue / TypeScript |
| Files | 44 |
| Last activity | 2026-06-12 |
| Status | Active |
Content in useSiteContent.ts still carries /* TODO */ markers for copy awaiting final wording.