Grindery SDK for drivers and CDS development

Last updated by Jamiu Idowu 8 days ago
Grindery SDK for drivers and CDS development 

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

Nexus CDS code gallery

Grindery CDS Editor

Create and edit Connector for Web3 systems

CDS Editor

How to create a Connector

Grindery Nexus common utilities library

-

Nexus common utilities library

Grindery Nexus Connector

Sample connector for Grindery Nexus

Grindery Nexus Connector

Examples

Description

Repository

Nexus Web3 connector

Web3 driver built on NodeJS

Web3 driver

Web2 Connectors

Slack connector

Slack driver for Grindery Nexus

Nexus Slack driver

CDS file

gSheet connector

Google Sheet driver for Grindery Nexus

Nexus gSheet driver

CDS file

Discord connector

Discord driver for Grindery Nexus

Nexus Discord driver

CDS file

Airtable connector

Airtable driver for Grindery Nexus

Nexus Airtable driver

CDS file

Webhook connector

Webhook driver for Grindery Nexus

Nexus webhook driver

CDS file

Quickstarts 

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 . 

Grindery CDS Code Gallery 

Here, you can see all open-source assets and projects our developer community is working on. You can search for an existing CDS file via the smart contract address or browse through the gallery by selecting a specific blockchain network. Visit our CDS code Gallery  for more. 
 
Image 1  

3. Grindery CDS Editor 

With our CDS editor , you can create and edit connectors. To learn how to create a connector, check out this guide . 
Image 2  

4. 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: 
npm run local:action helloWorldAction '{"message":"Test"}' 
npm 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.  
Refreshed On: Dec 08, 2022 06:39:11 UTC+00:00