Fuse

The fastest way to build and query great APIs with TypeScript
GitHub
553
Created a year ago, last commit 5 months ago
12 contributors
449 commits
Stars added on GitHub, month by month
N/A
N/A
0
11
12
1
2
3
4
5
6
7
8
9
10
2023
2024
Stars added on GitHub, per day, on average
Yesterday
=
Last week
+0.1
/day
Last month
+0.1
/day
npmPackage on NPM
fuse
0.12.1
Monthly downloads on NPM
11
12
1
2
3
4
5
6
7
8
9
10
2023
2024
README

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.