nordic-solutions-web Svelte Themes

Nordic Solutions Web

Corporate presentation website for Nordic Solutions LLC

Nordic Solutions Web

Corporate presentation website for Nordic Solutions LLC. The site is built as a discreet, bank-friendly, prerendered web presence for institutional review, partner diligence, and first contact.

Production: nordic-solutions-web.vercel.app

Stack

  • SvelteKit 2 + Svelte 5 runes
  • TypeScript strict mode
  • Bun 1.3.12 as the only package manager, script runner, and test runner
  • Vite
  • GSAP for deliberate page motion
  • Plain CSS custom properties for design tokens and component styling
  • ESLint + Prettier
  • Vercel deployment via @sveltejs/adapter-vercel

Do not use npm install, pnpm install, or Yarn in this repo. bun.lock is the only committed dependency lockfile.

Commands

bun install
bun dev
bun test
bun run check
bun run lint
bun run build
bun run verify

Use bun ci in CI before running verification:

bun ci
bun run verify

Deployment

The project is configured for Vercel production deployment:

  • adapter: @sveltejs/adapter-vercel
  • root layout prerendering: enabled
  • security headers: Vercel platform headers plus SvelteKit server hook fallback

This matches the current production host while keeping the public pages prerendered.

If the contact form later needs to send email, write CRM records, upload attachments, or perform server-side validation, keep that backend behavior on the Vercel/SvelteKit server side instead of adding a separate service casually.

Routes

  • /
  • /about
  • /services
  • /approach
  • /why-nordic
  • /contact

The home page narrative is:

Hero -> About -> Services -> Approach -> Why Nordic -> Presence -> Contact

Project Structure

src/
  lib/
    components/       reusable app and UI components
    layouts/          page-level shells
    modules/          domain content, validation, navigation, motion, tests
    styles/           global styles and design tokens
  routes/             SvelteKit file-based routes
static/               deployable fonts, images, icons, robots
docs/                 business brief and implementation notes
.agents/skills/       local design and workflow skills used by the project

Quality Gates

Run the full gate before shipping:

bun run verify

This runs tests, Svelte diagnostics, formatting/lint checks, and production build.

Visual QA screenshots may be generated under output/playwright during manual browser checks. Keep only screenshots that are useful as review evidence; do not commit throwaway runs.

Architecture Notes

  • Keep business copy and structured content in src/lib/modules.
  • Keep reusable UI in src/lib/components/ui.
  • Keep route pages thin and use route pages primarily as entry points.
  • Prefer SvelteKit primitives before adding third-party state, routing, or form libraries.
  • Do not add TanStack libraries preemptively. Add @tanstack/svelte-form only if intake flows become complex, and @tanstack/svelte-query only if server state or CMS/API data appears.
  • Keep .agents/skills and skills-lock.json; they are part of the local workflow. Remove only stale generated artifacts that are not active project context.

Top categories

Loading Svelte Themes