Skip to content

Repository files navigation

Winters Code

Marketing site for Winters Code, Preston Winters' solo software shop in Bandon, Oregon. Custom websites, apps, and tools for Oregon coast businesses.

Live:winterscode.com

winterscode.com mobile hero - You didn't go into business to manage software

LiveAstro 6Cloudflare PagesLicense: MIT


What this is

The marketing site for a solo software shop in Bandon, Oregon. Built to demonstrate the work rather than describe it. The site itself is the portfolio piece: live deploy data on the homepage, real-time Lighthouse and security audits, an in-page audit tool that runs PageSpeed against any URL, and a memory-active chat instrument powered by an open-source engine.

Built for two audiences at once:

  • Local small business owners scanning on phones, deciding whether to call. Sub-second loads on rural LTE, single-tap CTAs, no telemarketer copy.
  • Technical evaluators opening DevTools to judge the build quality. Lighthouse 95+ mobile, A+ security headers, zero external JS on the homepage, all data sources are real and queryable.

Stack

LayerChoiceWhy
FrameworkAstro 6Zero-JS by default, partial hydration for interactive islands
StylingTailwind v4 with @theme design tokensNo JS config, tokens are utilities the moment they exist
IslandsReact 19For the chat demo, morphing hero phrase, mobile menu
HostingCloudflare PagesEdge runtime, global CDN, sub-50ms TTFB
Live dataCloudflare Worker aggregating GitHub Events + PageSpeed Insights + Mozilla Observatory + Cal.comReal numbers, cached at 3 tiers (memory → KV → fallback)
Type safetyTypeScript strictEnd-to-end

Live performance

Lighthouse, mobile profile, real device:

MetricScore
Performance95+
Accessibility100
Best Practices100
SEO100

Security headers grade A+ (Mozilla Observatory). HSTS, strict CSP per-page, X-Frame-Options, Referrer-Policy, Permissions-Policy. Audit it yourself at observatory.mozilla.org.

Architecture

src/
├── layouts/
│ └── BaseLayout.astro # head meta, fonts, schema.org, scroll progress
├── components/
│ ├── layout/ # sitewide chrome (Header, Footer, MobileMenu)
│ ├── sections/ # homepage sections (Hero, Apps, Sites, FAQ)
│ ├── ui/ # atomic primitives (Button, Card, Divider)
│ └── islands/ # React components requiring hydration
├── pages/
│ ├── index.astro # homepage
│ ├── work.astro # portfolio with live interactive widgets
│ ├── services.astro # what I build
│ ├── about.astro # who I am
│ ├── contact.astro # how to reach me
│ ├── audit.astro # free in-page site audit tool
│ ├── privacy.astro # privacy policy
│ ├── terms.astro # terms of service
│ ├── 404.astro # not-found
│ └── api/
│ ├── workshop.ts # live workshop status (deploys, Lighthouse, etc.)
│ └── audit.ts # PageSpeed audit for any URL
├── lib/
│ └── portfolio.ts # portfolio data, single source of truth
└── styles/
└── global.css # design tokens, base styles, sitewide effects

Design tokens

All color, typography, and spacing tokens live in src/styles/global.css under @theme. Tailwind v4 turns them into utilities automatically (bg-bg-deep, text-wc-green, font-serif). Adding a token in CSS makes the utility available immediately, no config rebuild.

Palette is editorial + workshop: deep ash background, copper hairline accents, mint green primary action, mono numerals for data, serif for emotion.

TokenHexPurpose
bg-deep#0a0d0cPage background
bg-stone / bg-card / bg-raised#11151a / #161b1f / #1d2429Surfaces
wc-green / wc-green-bright#4dd8a8 / #5fe8b5Primary accent
copper / copper-bright / copper-deep#c8804a / #e09665 / #8a5430Secondary accent
ash-100 to ash-700Cool gray scaleText and borders

Fonts: Fraunces (display serif), IBM Plex Sans (body), JetBrains Mono (mono).

Development

npm install # install deps
npm run dev # local dev server (Astro Vite, hot reload)
npm run build # static build to dist/
npm run preview # preview production build locally

Node 22+ required.

Deployment

Cloudflare Pages, project winterscode. DNS managed via Cloudflare (zone winterscode.com). Worker secrets set via wrangler secret put and never committed.

Credit

Built by Preston Winters at Winters Code, Bandon Oregon. Custom sites, apps, and tools for Oregon coast businesses.

Other work

License

MIT. See LICENSE.

The code is open source. The "Winters Code" name and logo are property of Preston Winters and not covered by this license.

About

Marketing site for Winters Code · Custom React, Astro, and Flutter for Oregon coast businesses.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages