Getting Started
Houdini is a full-stack React framework built around GraphQL. It handles routing, server-side rendering, and data fetching. Because it’s built for GraphQL specifically, it can make some assumptions that general-purpose frameworks can’t, which means a lot less wiring for you.
The fastest way to start a project is:
npm create houdini@latestAnswer the prompts, then:
cd <project-name>npm installnpm run devThat’s enough to have a working app running locally.
Project Structure
A freshly generated project looks like this:
src/ routes/ +layout.tsx # root layout, wraps every page +page.tsx # the root page (renders at /) +index.tsx # the root HTML document +client.ts # your HoudiniClient definitionvite.config.ts # Vite config with the Houdini pluginhoudini.config.ts # Houdini configurationsrc/ routes/ +layout.jsx # root layout, wraps every page +page.jsx # the root page (renders at /) +index.tsx # the root HTML document +client.ts # your HoudiniClient definitionvite.config.js # Vite config with the Houdini pluginhoudini.config.js # Houdini configurationRoutes live in src/routes. The filesystem is the router: new routes are new files. We’ll cover how that works in detail in Routing.
IDE Setup
Install the Houdini GraphQL extension for VS Code to get live diagnostics, completions, hover documentation, and go-to-definition, powered by the same compiler that builds your app. See IDE Setup for details and other editors.