mirror of
https://github.com/Such-Software/such.software.git
synced 2026-10-17 05:32:05 +02:00
8587509eed108ef114d8df99d78e5255cd968782
The page led with our architecture. "Multi-tenant commerce platform", "from one engine", "per-tenant theming is the whole point": all true, none of it what someone deciding whether to hire us is trying to find out. It also called the reader a "tenant" throughout, which is an operator's word for a customer. It was long and it repeated itself. Theming was explained four times over (hero, a dedicated section, the demos intro, the surfaces intro), and revenue share, crypto, tax, and data ownership each appeared in a feature card AND an FAQ. The feature grid ran to eleven cards, several of them vendor filler: "Flexible Architecture", "Performance First". Now: what it is, what you can sell, how you get paid, what it costs, who runs it. Six feature cards instead of eleven. The standalone theming section is gone, folded into the hero and the demos. Eight questions instead of ten, each one something a buyer would actually ask, and the answers are shorter than the questions deserve rather than longer. The technical detail survives, moved to one block at the bottom under a heading that says who it is for. That is where Medusa, Next.js, the payment rails, and the hosting story live now. Two things fixed while in here. The demos are labelled as demo storefronts, because they are ours and not client work, and the caption no longer lets that blur. And the CTA pointed at /contact, a 307 redirect hop that was fixed elsewhere months ago and missed here.
Such Software Website
Corporate website for Such Software LLC, a full-service software provider based in Kennett Square, PA.
Lighthouse Scores
| Page | Performance | Accessibility | SEO | Best Practices |
|---|---|---|---|---|
| Home | 99% | 100% | 100% | 77%* |
| Services | 98% | 100% | 100% | 100% |
| About | 99% | 100% | 100% | 100% |
*Home page Best Practices is 77% due to Cloudflare Turnstile third-party cookies.
Tech Stack
- Next.js 15 with App Router
- React 18 + TypeScript 5
- Tailwind CSS 3 + Framer Motion 11
- Radix UI accessible primitives
- next-themes for dark/light mode
- Zod for validation
- Cloudflare Turnstile for bot protection
- Turborepo + pnpm 9
Project Structure
such-software-site/
├── apps/web/ # Next.js website
│ ├── src/app/ # Pages (home, services, about)
│ ├── src/components/ # React components
│ ├── tests/ # Playwright a11y tests
│ └── public/ # Static assets
├── packages/ui/ # Shared UI components
└── packages/config/ # Shared config
Development
pnpm install # Install dependencies
pnpm dev # Start dev server at localhost:3000
pnpm build # Production build
pnpm start # Start production server
Testing
cd apps/web
pnpm test:a11y # Run Playwright accessibility tests
pnpm test:ui # Run tests with interactive UI
42 accessibility tests across Chromium, Firefox, and WebKit covering WCAG 2.2 AA criteria, heading hierarchy, color contrast, and keyboard navigation.
Accessibility
- WCAG 2.2 AA: engineered to meet, audited against (Lighthouse measured 100%)
- Skip-to-main link, semantic HTML5, ARIA labels
- Proper heading hierarchy, color contrast (4.5:1+)
prefers-reduced-motionsupport- Keyboard navigation, focus indicators
- Structured data (JSON-LD) and canonical URLs
Environment Variables
Create apps/web/.env.local:
NEXT_PUBLIC_TURNSTILE_SITE_KEY=your_site_key
TURNSTILE_SECRET_KEY=your_secret_key
See apps/web/.env.example for template.
License
Proprietary - Such Software LLC
Languages
TypeScript
81%
MDX
15.3%
CSS
2.8%
JavaScript
0.9%