Skip to content

kentcdodds/kentcdodds.com

Repository files navigation

Kent C. Dodds' site

Build Status GPL 3.0 License

This repository contains the source code for kentcdodds.com, built with Remix, React, TypeScript, Vite, and an Express server.

Tech stack

  • React Router + React + TypeScript
  • Vite build pipeline
  • Express runtime server
  • Prisma + SQLite
  • Tailwind CSS
  • Vitest and Playwright for testing

Prerequisites

Setup

  1. Clone the repository.
  2. Copy environment variables:
    • cp services/site/.env.example services/site/.env
  3. Run the full setup script:
    • npm run setup -s

The setup script installs dependencies, resets the local database, validates the project, primes local cache data, installs Playwright browsers, and runs end-to-end tests.

This repo now uses npm workspaces. Install dependencies from the repository root so the site and worker packages share one lockfile and one node_modules tree. The site itself lives in services/site, while root npm run ... commands forward to that workspace for convenience.

Local development

Start the development server:

  • npm run dev

Then open http://localhost:3000.

Useful scripts

  • npm run dev - start local development server
  • npm run test - run unit/component tests
  • npm run test:e2e:dev - run Playwright tests against dev server
  • npm run lint - run Oxlint
  • npm run lint:all - run lint across the site and workspace packages
  • npm run typecheck - run TypeScript checks
  • npm run typecheck:all - run TypeScript checks across all workspaces
  • npm run build - build the app
  • npm run nx:graph - inspect the Nx workspace graph

Contributing

For contribution guidelines and manual setup details, read CONTRIBUTING.md.

Contributors