Hoooz — multilingual SaaS marketing site hand-coded in vanilla HTML, CSS and JavaScript

Hoooz® — Multilingual SaaS Marketing Site, Hand-Coded in Vanilla HTML, CSS and JavaScript

Discipline Web design · Front-end · Headless CMS
Date Mar 2026 · Apr 2026
Stack HTML · CSS · JavaScript · Decap CMS · Netlify
Industry B2B SaaS
Locales EN · FR · DE · ES · IT
01

Client

B2B SaaS · identity kept confidential

A fast-growing B2B SaaS serving global marketing teams. The client's name, product and visual identity on this deliverable have been replaced with a fictitious brand, Hoooz, to preserve confidentiality. Everything shown on this page is the actual technical work, applied to a placeholder product.

02

Challenge

Five markets, one marketing site, zero platform lock-in

Launch a marketing site that speaks to five markets on day one, without a dev team in-house, without a monthly Webflow or HubSpot subscription, and without sacrificing Core Web Vitals. Content has to be editable by non-developers. Translations have to stay in sync. Performance has to hold as pages are added over time.

03

Scope

31 static pages × 5 locales, CMS, deployment pipeline

Vanilla static site generator written in Node, no dependencies. Home, about, pricing, contact, legal, privacy and 404, each translated across EN, FR, DE, ES and IT. Decap CMS wired to git. Netlify deployment with edge redirects and language detection. Contact form with honeypot protection. Full JSON-LD coverage, reciprocal hreflang and sitemap.

04

Approach

Content in JSON, HTML generated at build, nothing shipped to the browser that isn't needed

Every piece of content, every translation, every price lives in JSON files the client can edit through a visual interface. A small Node script reads them at build time and writes 31 static HTML files. The browser receives plain HTML, one stylesheet, one script. No framework runtime, no hydration, no waterfall. The site loads in under a second on 4G and stays that way as content grows.

[01 — five locales, one codebase]

Five languages. One source of truth. Zero framework.

Content lives in eight JSON files, one per page, each holding a nested object keyed by locale. The build pipeline, a single Node script with no npm dependencies, reads the JSON and writes one HTML file per page and per language. Thirty-one static files in total, generated in under a second.

Every page carries reciprocal hreflang tags, a canonical URL, Open Graph metadata in the right locale format and JSON-LD structured data. The sitemap enumerates all language pairs so Google understands which version to serve to which market. Nothing about the multilingual setup depends on third-party tooling.

Hoooz — multilingual home page in English, French, German, Spanish and Italian
Hoooz — localised content detail
Hoooz — translation schema detail

[02 — content the client can edit]

A static site only matters if the people who know the product can update it. The admin interface is Decap CMS, open-source, git-backed. The client logs in, edits a page, clicks publish. A commit lands on the main branch. Netlify detects the change, runs the build, redeploys the 31 pages.

No developer between a typo and its fix. No CMS database to maintain. No plugin to update. Every translation is a single JSON field with a clear label, validated against the schema defined in the admin config. The editorial workflow is optional: changes can go live immediately or stage through a review PR.

Hoooz — Decap CMS admin interface for non-technical content editing
Measured, not promised

Performance, accessibility, SEO: the actual numbers.

Lighthouse scores measured on the live Hoooz build. Green across the board, by construction.

Measured on hoooz.io · pagespeed.web.dev · April 2026
0

Performance

Excellent · threshold 90

0

Accessibility

Excellent · threshold 90

0

Best practices

Excellent · threshold 90

0

SEO

Perfect · threshold 90

How these numbers are reached

  • Zero framework runtime
  • Deferred JavaScript
  • Preconnected fonts
  • Immutable cache on assets
  • Semantic HTML5
  • Reciprocal hreflang
  • Full JSON-LD schema
  • Open Graph + Twitter Cards
  • sitemap.xml + robots.txt
  • WCAG AA target
  • prefers-reduced-motion honoured
  • Zero third-party trackers

[03 — interactions, hand-written]

A 557-line main script handles the entire UI: scroll progress, word-stagger reveals, animated counters, a terminal that cycles through SCANNING, LOCKING, DEPLOYED states, a pricing toggle that slides between monthly and annual and swaps currency in place, a cursor blob that follows the pointer and softens over interactive elements, magnetic buttons that pull toward the click zone.

Every animation uses IntersectionObserver or requestAnimationFrame, every one of them respects prefers-reduced-motion. No motion library, no animation framework, no physics engine. Just the platform.

Hoooz — custom interactions, terminal animation and pricing toggle with currency switcher

[04 — mobile, not an afterthought]

The site is built mobile-first and adapts through twelve breakpoints between 600px and 1280px using CSS logical properties, fluid typography via clamp() and container-aware spacing. No separate mobile codebase. No media query sprawl. The same markup serves every screen.

Hoooz — responsive mobile design across home hero, pricing and contact screens

We hand-code websites that load in under a second.

Start a project
Hoooz — final deliverable overview

[conclusion]

Hoooz ships as a marketing site that loads in under a second, scores 99 on Lighthouse performance, and can be edited by anyone on the client's team without touching a line of code. The stack is boring on purpose: HTML, CSS, JavaScript, a Node build script, a git-backed CMS, a static host. No framework to migrate away from when versions shift. No monthly platform fee. No dependency graph that rots over eighteen months. The site will still work, and still score, three years from now. That's the point of hand-coded, owned websites.

[more projects]

(05)

Start your custom website project — Free consultation with our design studio

Tell me about it — I'll get back to you within 24 hours with a free intro call proposal.

By submitting this form, you consent to your data being used to respond to your message.

Not ready yet?

Browse more projects ↑