From e2940bd09fff38f6cab075d084bb95c23034fe1e Mon Sep 17 00:00:00 2001 From: Matej Vukosav Date: Fri, 20 Dec 2024 03:03:09 +1100 Subject: [PATCH] chore: simplify developer tools page (#75) --- docs/05-developer-tools/00-overview.mdx | 86 +++++++++---------------- 1 file changed, 31 insertions(+), 55 deletions(-) diff --git a/docs/05-developer-tools/00-overview.mdx b/docs/05-developer-tools/00-overview.mdx index 1173f7f0..ddde2f27 100644 --- a/docs/05-developer-tools/00-overview.mdx +++ b/docs/05-developer-tools/00-overview.mdx @@ -3,58 +3,34 @@ id: overview title: Developer Tools --- -Welcome to the exciting world of application development in the decentralized -space! As a developer, you have the opportunity to build cutting-edge -applications using our comprehensive suite of tools. Start by shaping the core -application logic with our Protocol SDK and then bring your application to life -by crafting intuitive user interfaces with the Client SDK. Join our community of -developers and start creating powerful decentralized applications that can make -a significant impact in the tech world. - -Application development consists of two main parts: - -1. building the application logic with the Protocol SDK -2. building the application client interface with the Client SDK - -## Protocol SDK - -The Protocol SDK within the Calimero Network equips developers with tools for -creating, testing, and deploying protocols essential for decentralized -applications (DApps). It features capabilities such as code generation, security -enhancement, and interoperability support to ensure robust and efficient DApp -operations. This SDK is crucial for integrating with the Calimero Network's -components, facilitating seamless updates and versioning critical for DApps in -fields like decentralized messaging and finance. - -Currently we have SDK only for rust but in the future we will have SDKs for -other languages as well. - -## Client SDKs - -The Client SDK includes straightforward tools to help you build your -application. For logging in, we provide functions that allow users to -authenticate using their wallet credentials, which must be set up as root keys -in the admin dashboard. This setup ensures that access is both secure and -straightforward. For handling data, the SDK supports JSON-RPC for direct data -transactions and websockets for live updates. These features are designed to -make your development process efficient and effective, allowing you to focus on -creating a great user experience. - -Currently we have SDK only for typescript but in the future we will have SDKs -for other languages as well. - -## Publish app - -After you have created your application logic with Rust and your application UI -with TypeScript, you can publish your app. Follow instructions in the -[Publish App](../tutorials/publish-app) guide to learn how to publish your app -and how users can download and run it. - -## Building app from template - -We have prepared template repository for you to get started quickly. You can -find the template repository -[here](https://github.com/calimero-network/core-app-template). Repository -contains two folders, `logic` and `app`. `logic` folder contains the application -logic written in Rust and `app` folder contains the application client interface -written in TypeScript. +We provide different tools for building decentralized applications. + +### CLI Tools for interacting with the node and its functionalities + +You can use CLI to interact with the node using the terminal. +[Merod](./CLI/merod) is a CLI tool for managing nodes. [Meroctl](./CLI/meroctl) +is tool for performing various operations with the node such as context +creationa or app installation. + +### SDKs for building the application + +Two primary SDKs are available: + +[Protocol SDK](./SDK/protocol-sdk/protocol-sdk): Used for building WebAssembly +(WASM) application logic in Rust. Provide macros for identifying different +application components such as state, logic and events. + +[Client SDK](./SDK/client-sdk/client-ts-sdk): Enables frontend development in +TypeScript, supporting wallet authentication and context data handling via +JSON-RPC and WebSockets. + +### Apps for node administration throught the UI + +- [Admin dashboard](./apps/admin-dashboard) is web interface for node admin api. +- [Desktop application](./apps/desktop-app) is a desktop interface for the node + where node is available as a service on the local machine. + +### Examples + +We have few repositories that demonstrate how SDK can be used. Check our +[GitHub](https://github.com/calimero-network)