Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/StellateHQ/fuse
Fuse: The fastest way to build and query great APIs with TypeScript
https://github.com/StellateHQ/fuse
api graphql nextjs typescript
Last synced: 3 months ago
JSON representation
Fuse: The fastest way to build and query great APIs with TypeScript
- Host: GitHub
- URL: https://github.com/StellateHQ/fuse
- Owner: StellateHQ
- License: mit
- Created: 2023-11-03T07:26:17.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-13T13:38:02.000Z (5 months ago)
- Last Synced: 2024-07-04T09:30:28.614Z (4 months ago)
- Topics: api, graphql, nextjs, typescript
- Language: TypeScript
- Homepage: https://fusedata.dev
- Size: 20.5 MB
- Stars: 512
- Watchers: 7
- Forks: 11
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fuse
![Fuse: End-to-end typesafe data fetching for frontend teams at scale](https://images.ctfassets.net/yq1dddfl2vc7/6EDzUh3emBY3uQqoxulmPA/c738d8fbae3e412e38cadee598f3e9db/twitter_header.png)
# 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.```sh
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](https://fusedata.dev/docs/setting-fuse-up-manually/nextjs))
## Querying your data layer
```tsx
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
Welcome {result.data?.user?.name}
}
```# [Docs](https://fusedata.dev/docs)
**Read [the documentation](https://fusedata.dev/docs) for more information about using Fuse**.
Quicklinks to some of the most-visited pages:
- [Getting started](https://fusedata.dev/docs)
- [Querying your API (client)](https://fusedata.dev/docs/client)
- [Building your API (server)](https://fusedata.dev/docs/server/queries-and-mutations)
- [Deploying your API (server)](https://fusedata.dev/docs/deployment)
- [The Fuse Method](https://fusedata.dev/docs/fuse-method)# License
Licensed under the MIT License, Copyright © 2023-present Stellate, Inc.
See LICENSE for more information.