{"id":13880718,"url":"https://github.com/hoangvvo/benzene","last_synced_at":"2025-04-05T23:06:52.449Z","repository":{"id":44626163,"uuid":"290779499","full_name":"hoangvvo/benzene","owner":"hoangvvo","description":"⌬ Fast, minimal, agnostic GraphQL Servers ⌬","archived":false,"fork":false,"pushed_at":"2022-08-13T16:23:13.000Z","size":1898,"stargazers_count":164,"open_issues_count":7,"forks_count":7,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-29T22:05:11.582Z","etag":null,"topics":["cloudflare-workers","deno","graphql","graphql-server","javascript","node","websocket"],"latest_commit_sha":null,"homepage":"https://benzene.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hoangvvo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-08-27T13:14:27.000Z","updated_at":"2025-02-02T14:55:44.000Z","dependencies_parsed_at":"2022-08-12T11:20:51.433Z","dependency_job_id":null,"html_url":"https://github.com/hoangvvo/benzene","commit_stats":null,"previous_names":[],"tags_count":78,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangvvo%2Fbenzene","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangvvo%2Fbenzene/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangvvo%2Fbenzene/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangvvo%2Fbenzene/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hoangvvo","download_url":"https://codeload.github.com/hoangvvo/benzene/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247411231,"owners_count":20934653,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare-workers","deno","graphql","graphql-server","javascript","node","websocket"],"created_at":"2024-08-06T08:03:25.451Z","updated_at":"2025-04-05T23:06:52.427Z","avatar_url":"https://github.com/hoangvvo.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://benzene.vercel.app/\"\u003e\n    \u003cimg alt=\"Stereo\" src=\"https://benzene.vercel.app/og.png\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nBenzene is a new take on GraphQL server that gives us the control we need while staying blazing fast.\n\n![CI](https://github.com/hoangvvo/benzene/workflows/CI/badge.svg)\n[![codecov](https://codecov.io/gh/hoangvvo/benzene/branch/main/graph/badge.svg?token=KUCEOC1JT2)](https://codecov.io/gh/hoangvvo/benzene)\n[![PRs Welcome](https://badgen.net/badge/PRs/welcome/ff5252)](/CONTRIBUTING.md)\n\n## Features\n\nThe `@benzene/http` and `@benzene/ws` packages allow us to build a full-featured GraphQL server, featuring:\n\n- **Super minimal ([~4kB](https://bundlephobia.com/result?p=@benzene/core)) and [performant](/benchmarks)**. `@benzene/http` and `@benzene/ws` purely wrap `@benzene/core`, which includes minimal dependencies and features no third-party integrations, thus avoiding unnecessary overheads.\n- **Transport \u0026 Framework agnostic**. Each package features generic Request, Response, or WebSocket interfaces to easily plug into any JavaScript frameworks or runtimes: [Node.js](./examples/with-http), [Deno](./examples/deno), [Cloudflare Worker](./examples/cloudflare-workers), etc.\n- **Customizable runtime**. Use custom GraphQL implementation such as [`graphql-jit`](https://github.com/zalando-incubator/graphql-jit) or rolling our own for performance and cutting-edge features.\n- **Unopinionated and observable APIs**. Benzene does not include any middleware or configurations, so we can be in total control of logging, parsing, and error handling.\n- **Unified pipeline**. Write error handling or context creation function only once. Every transport handler inherits the same [Benzene instance](https://benzene.vercel.app/reference/benzene) and takes advantage of its shared configuration.\n- **Fully extensible**. Despite not being battery-included, it can be extended with _recipes_ (like [Persisted queries](https://benzene.vercel.app/recipes/persisted-queries)) or [@benzene/extra](https://www.npmjs.com/package/@benzene/extra).\n\nWe are taking an approach opposite to [Apollo Server](https://github.com/apollographql/apollo-server), which abstracts everything behind its `applyMiddleware` function that includes unexpected and hard-to-customized \"defaults\".\nWhile our approach requires a bit more boilerplate, we achieve an observable and customizable server integration.\n\n## Documentation\n\nDocumentation is available at [benzene.vercel.app](https://benzene.vercel.app)\n\nThere is also a [Getting Started](https://benzene.vercel.app/getting-started) section\nwhich shows how to build a _real-time_ book voting app using both `@benzene/http` and `@benzene/ws`.\n\n## Examples\n\nThere are also various [examples](examples) for integrations with different tools and frameworks.\n\n## Contributing\n\nThis repository uses the new [npm v7 workspaces](https://docs.npmjs.com/cli/v7/using-npm/workspaces) ([yarn 1 workspace](https://classic.yarnpkg.com/en/docs/workspaces/) may also work). Please see [contributing.md](CONTRIBUTING.md).\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhoangvvo%2Fbenzene","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhoangvvo%2Fbenzene","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhoangvvo%2Fbenzene/lists"}