Skip to content

Fuse: The fastest way to build and query great APIs with TypeScript

License

Notifications You must be signed in to change notification settings

StellateHQ/fuse

Repository files navigation

Fuse

Fuse: End-to-end typesafe data fetching for frontend teams at scale

Getting Started

When you are in the root of your app run the following command. This will install all the packages and generate the files you need.

npx create-fuse-app

Then, run npx fuse dev and your API will be running at localhost:4000/graphql!

If you are using Next.js, you don't need to manually run fuse dev. create-fuse-app will add a Next.js plugin to your next.config.js/ts/mjs`` and an API route at /api/fuse` for you to access your API. (learn more)

Querying your data layer

import { graphql } from '@/fuse'
import { execute } from '@/fuse/server'

const UserQuery = graphql(`
  query User($id: ID!) {
    user(id: $id) {
      id
      name
    }
  }
`)

export default async function Page() {
  const result = await execute({
    query: UserQuery,
    variables: { id: '1' },
  })

  return <p>Welcome {result.data?.user?.name}</p>
}

Read the documentation for more information about using Fuse.

Quicklinks to some of the most-visited pages:

License

Licensed under the MIT License, Copyright © 2023-present Stellate, Inc.

See LICENSE for more information.