Houdini
The "disappearing" GraphQL client for the SvelteKit
README
- ```svelte
- <script>
- // src/routes/items/+page.svelte
- import { graphql } from '$houdini'
- const AllItems = graphql`
- query AllItems {
- items {
- text
- }
- }
- `
- </script>
- {#each $AllItems.data.items as item}
- <div>{item.text}</div>
- {/each}
- ```
✨ Features
- Composable and colocated data requirements for your components
- Normalized cache with declarative updates
- Generated types
- Subscriptions
- 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 🙂