Skip to content


Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time

The disappearing GraphQL client for SvelteKit.

    // src/routes/items/+page.svelte
    import { graphql } from '$houdini'

    const AllItems = graphql`
        query AllItems {
            items {

{#each $ as item}


  • Composable and colocated data requirements for your components
  • Normalized cache with declarative updates
  • Generated types
  • Subscriptions
  • Support for SvelteKit
  • Pagination (cursors and offsets)

At its core, houdini seeks to enable a high quality developer experience without compromising bundle size. Like Svelte, houdini shifts what is traditionally handled by a bloated runtime into a compile step that allows for the generation of an incredibly lean GraphQL abstraction for your application.

🕹  Example

For a detailed example, you can check out the todo list in the example directory or the final version of the Pokédex application from the Getting Started guide.

📚  Documentation

For documentation, please visit the api reference on the website.

🚀  Getting Started

For an in-depth guide to getting started with Houdini, check out the guide on the our website.

✏️  Contributing

If you are interested in helping out, the contributing guide should provide some guidance. If you need something more specific, feel free to reach out to @AlecAivazis on the Svelte discord. There's lots to help with regardless of how deep you want to dive or how much time you can spend 🙂