Skip to content
Mamori LLC

Uses

What we build with

A snapshot of the stack and tools behind mamorillc.com and the studio's apps. Inspired by the /uses convention.

The umbrella site stack

  • Framework

    Astro 5 with React 19 islands. Static output, near-zero JS by default, React only where interactivity earns it (theme toggle, contact form).

  • Styling

    Tailwind CSS v4 via @tailwindcss/vite. Class-based dark mode with a pre-paint inline script to avoid flashes. @tailwindcss/typography for Markdown prose.

  • Type system

    TypeScript in strict mode. astro check at lint time. eslint-flat-config with typescript-eslint and eslint-plugin-astro.

  • Typography

    Fraunces (display) and Hanken Grotesk (body) — both self-hosted via @fontsource-variable for zero external requests. System-font fallbacks cover CJK, Arabic, Devanagari, Bengali, Thai, and Korean.

  • Content

    Astro Content Collections with zod-validated frontmatter. Markdown lives under src/content/{blog,pages}/<lang>/, and adding a post is a one-file commit.

  • Internationalization

    20 locales (en at root, 19 prefixed). Native Astro i18n routing, JSON catalogs in src/i18n/, hreflang + canonical alternates on every page, RTL handling for Arabic.

  • Testing

    Vitest for unit tests on islands, hooks, and data integrity. @testing-library/react for component tests. Test-first for new logic.

  • Quality gates

    ESLint, Prettier (with prettier-plugin-astro), astro check, a custom i18n key-parity script, linkinator for internal links, and a Lighthouse CI workflow on GitHub Actions.

  • Contact form

    A React island posts to Web3Forms with a honeypot, falling back to a plain mailto: link. The form access key lives in PUBLIC_WEB3FORMS_KEY (.env.example).

  • SEO

    @astrojs/sitemap with hreflang alternates per URL, @astrojs/rss per locale, JSON-LD (Organization, WebSite, Article, SoftwareApplication, FAQPage), Open Graph with og:image + og:locale + alternates.

Workspace

Items marked (TODO: update) are placeholders — replace freely in src/pages/uses.astro.

Editor
Claude Code
Machine
MacBook Pro 16" / Apple Silicon
OS
macOS
Browser
Arc / Safari for testing
Terminal
_(TODO: update)_
Notes & writing
_(TODO: update)_

Services

Source & CI
GitHub + GitHub Actions
Hosting
GitHub Pages
Contact form
Web3Forms (free tier)
Email
admin@mamorillc.com
Analytics
None (privacy-first)