Overview
This SDK contains the tools for drivers and CDS development. These tools include Nexus common utilities library and connector for Grindery Nexus. In addition, the SDK provides a series of use cases and examples for reference purposes. Such examples include a Web3 driver built on NodeJS and Web2 drivers built on Python.
But before we move on; it is important that you understand the concept behind CDS. Today, most successful Web2 SaaS companies have their own marketplaces for integrations and users can configure the integrations themselves. Zapier further empowered anyone to integrate and connect 5000+ Web2 applications.
Now, guess what? The same model can work for Web3 dApps; Grindery Nexus is the solution. Nexus empowers users with do-it-yourself (DIY) integrations. It allows you to define workflows and create a unified, seamless on-, off-, and cross-chain integration. Meanwhile, Grindery Nexus renders intuitive user interfaces for end users to create the workflows using what we call CDS (connector declaration schema), an enhanced ABI in JSON format. In a nutshell, the CDS file defines how the Grindery Nexus workflow engine interacts with external systems.
Tool | Description | Link/
Repository |
Web3 CDS Gallery | Code gallery for Nexus CDS files built by developers | |
Grindery CDS Editor | Create and edit Connector for Web3 systems | |
Grindery Nexus common utilities library | - | |
Grindery Nexus Connector | Sample connector for Grindery Nexus | |
ㅤ | ㅤ | ㅤ |
Examples | Description | Repository |
Nexus Web3 connector | Web3 driver built on NodeJS | |
Web2 Connectors | ||
Slack connector | Slack driver for Grindery Nexus | |
gSheet connector | Google Sheet driver for Grindery Nexus | |
Discord connector | Discord driver for Grindery Nexus | |
Airtable connector | Airtable driver for Grindery Nexus | |
Webhook connector | Webhook driver for Grindery Nexus |
Quickstarts
1. Connector Schema Definitions
Connectors abstract web3 and web2 protocols into an interface of composable triggers and actions. In this documentation, you will see the full list of Grindery Nexus connector schema definitions.
2. Grindery CDS Editor
With our CDS editor, you can create and edit connectors. To learn how to create a connector, check out this guide.
3. Sample Grindery Nexus Connector
Development
A connector can contain any number of actions and triggers. To test the connector, we can use npm run local:action and npm run local:trigger commands. They accept two parameters namely key and fields. As example is shown below:
javascriptnpm run local:action helloWorldAction '{"message":"Test"}'
javascriptnpm run local:trigger helloWorldTrigger '{"interval":1000,"recurring":true}'
After deployment, the connector will be run as a WebSocket server. To test it in production setting, run npm run server.
Webhook
Grindery Nexus supports HTTP inbound webhook for connectors, the URL is looks like: https://orchestrator.grindery.org/webhook/:connector_key/:trigger_key/:path. You can handle webhooks with webhooks parameter in ConnectorDefinition, see src/connector.ts.
CDS file
You can check out the CDS file for this sample connector. Note that this file is read by Grindery Nexus frontend and engine so that they can interact with the connector.