Our New Open Source GraphQL Project
Over the last few years, the team have been working hard to build apps for our clients. One technology that we have used on each project is a GraphQL API. We have chosen this technology for its flexibility and ability to adapt to changing requirements.
We have also found that data is becoming more fragmented, distributed across many systems. From CRMs to SaaS services and everything in between.
GraphQL has been a great technology for joining this data. Streamlining the connection of these diverse sources under a unified API.
Today, we are releasing Graphweaver. An open-source project that takes this learning and makes it available to everyone.
At its core, Graphweaver connects many data sources to create a GraphQL API. We have used it as a headless CMS, an API Gateway, and as a Backend for mobile apps.
We will continue to work hard on improvements. We hope that it will be embraced by the open-source community, improving beyond our imagination.
Here are some of the features you will love.
Product Overview
Instant GraphQL API - Connect your data sources to Graphweaver for an instant GraphQL API. This API includes all the CRUD operations you would expect to create, read, update, and delete. It auto-generates filters, sorting, and pagination arguments, saving you time. You can extend the built-in operations with your code for complete flexibility.
Multiple Sources - Graphweaver has out-of-the-box data connectors, from Postgres and Mysql to Xero and Contentful. You are in control of the data that you connect. Furthermore, you can connect any number of data sources at the same time. This power means you can stitch together different data sources in real-time as if they were one.
Cross Source Filters - Need to filter the data? Graphweaver creates filters automatically for all the connected data sources. You can even filter across data sources! Imagine fetching customer orders in your local database using a value stored in your CRM.
100% Open Source - Graphweaver is open-source, available on GitHub under the MIT license, so you are free to change and deploy as needed. We accept contributions to the project which will help improve Graphweaver for everyone.
Admin Panel - View, create, edit, and delete data from any data source. The admin panel is a React.js app that you can extend with custom pages and fields. Giving you the flexibility to customise it to any project you are working on.
Granular permissions - Define granular permissions for every role and user. You decide what each user or role can do (like reading, creating, updating, or deleting) for any piece of data or source.
Code First - With Graphweaver's code-first philosophy, making changes or connecting data sources involves writing Typescript, giving you complete customisation. Tailor any part of Graphweaver for your project's requirements.
Code Generator - With the Graphweaver CLI tool, you can introspect a connected database and instantly create the Typescript code needed to connect. These Typescript files are then yours to extend with custom code for complete flexibility.
If you want to learn more or try it yourself, please see some of the links below.
Useful Links to Get Started
Quick Start Guide: https://graphweaver.com/docs/quick-start
Examples:
- Postgres and Mysql: https://github.com/exogee-technology/graphweaver/tree/main/src/examples/databases
- REST and Mysql: https://github.com/exogee-technology/graphweaver/tree/main/src/examples/rest
- Xero: https://github.com/exogee-technology/graphweaver/tree/main/src/examples/xero