All posts

Our Tech Stack

A running list of every tool, framework, and service we use to build and operate arrowandbell.com.

This is a living document. As we add new tools and services, we’ll update this list.

Frameworks and Languages

Next.js 14: React framework with App Router. We use it in static export mode, which pre-renders every page to plain HTML at build time. No server-side rendering, no Node.js runtime in production. Just fast, static files.

TypeScript: Type-safe JavaScript. Catches bugs before they ship.

React 18: UI component library. Handles interactive elements like the navigation menu and contact form.

Styling

Tailwind CSS: Utility-first CSS framework. Every style is applied directly in the markup, which keeps the codebase small and makes changes predictable.

PostCSS: CSS processing pipeline that Tailwind runs through.

Fonts

Google Fonts: We load three typefaces: DM Serif Display for headlines, Outfit for body text, and JetBrains Mono for small labels and accents.

Hosting and Infrastructure

Cloudflare Pages: Static site hosting with a global CDN. Deploys automatically from GitHub on every push to main. Also runs our serverless Pages Functions.

Cloudflare DNS: Nameservers and DNS management for arrowandbell.com. Handles SSL certificates automatically.

Cloudflare Pages Functions: Lightweight serverless functions that run alongside our static site. Powers the contact form endpoint.

Email

Resend: Transactional email API. When someone submits the contact form, a Pages Function calls Resend to deliver a formatted email. Free tier covers 3,000 emails per month.

Source Control and Deployment

GitHub: Git repository hosting. Cloudflare Pages watches the main branch and triggers a new build on every push.

Git: Version control. Every change to the site is tracked in commit history.

Development Tools

Claude Code: AI-powered development assistant from Anthropic. Used for building components, debugging, writing copy, and managing the entire development workflow.

npm: Package manager for JavaScript dependencies.

SEO, AEO, and AI Visibility

JSON-LD Structured Data: Machine-readable business information embedded in the page markup. Helps search engines and AI agents understand what the site is about.

XML Sitemap: Tells search engines which pages exist and when they were last updated.

robots.txt: Instructs search engine crawlers and AI agents on what to index. We explicitly allow all major AI crawlers (ClaudeBot, Claude-SearchBot, GPTBot, PerplexityBot, and others) so our content is visible to the answer engines where customers increasingly start their research.

llms.txt: A curated table of contents for AI systems, served at arrowandbell.com/llms.txt. Where robots.txt tells crawlers where they can go, llms.txt tells them what your site is actually about and which pages matter most. The standard is still emerging, but adoption is growing fast and the cost of implementation is about 15 minutes of work. If AI agents are going to recommend businesses to your customers, you want to make it as easy as possible for those agents to understand yours. We wrote a deeper explanation in our AEO guide.


Last updated: March 2026