Check out the quick demo video (tried to fit everything in 3 minutes so it might be rushed)

Inspiration

Sorosan aims to become a fundamental Web3 solution, providing an accessible environment for both developers and non-developers to engage with the Stellar network. Currently, the predominant method involves using sorosan-cli through a terminal. To address this, Sorosan introduces an approachable interface catering to all skill levels, with the objective of aligning with EVM-based smart contract development. Sorosan envisions a future where deploying and interacting with smart contracts on the web is as seamless as using an SDK. What initially started as a developer tool for simplifying Soroban work and a platform where users can deploy audited stellar smart contracts in the node environment has expanded into an SDK that seamlessly integrates with the Freighter wallet. Sorosan's strengths lie in converting the challenges of CLI into opportunities, providing a web-based avenue to unlock Stellar's vast potential.

What it does

Sorosan offers an array of versatile tools designed to streamline your interaction with the Stellar network. These tools cater to various aspects of the blockchain ecosystem, providing developers and users alike with enhanced functionality and convenience.

Sorosan Dapp

Contract Deployment

Sorosan's contract deployment tools empower you to seamlessly create and manage smart contracts on the Stellar network. Some of the highlighted features include:

  • Smart Token Deployment: Deploy Stellar Tokens with ease using a single click. Choose to wrap them with Stellar Assets for added flexibility.

  • Timelock Deployment: Utilize the simple Timelock contract deployment feature, ensuring secure and controlled access to your assets.

  • Custom Deployment: After compiling a Stellar smart contract, upload and deploy it using Sorosan, with support for initialization if applicable.

Tools

Sorosan provides a set of essential tools to enhance your Stellar network experience:

  • Contract Explorer: Access any contract's ABI (wasm) and invoke the method from the UI. Supports the most basic data types.

  • Token Explorer: Access the main token explorer to retrieve detailed information about a Soroban token.

  • Unit Converter: Utilize a straightforward calculator to effortlessly convert XLM to its lowest unit, Stroops.

  • Friend Bot GUI: Experience the simplicity of calling the Friend API through an intuitive graphical interface.

Resources

Explore the following resources to get started and make the most of Sorosan Dapp:

Sorosan SDK

Sorosan SDK Features

The Sorosan SDK serves as a foundational component of the Sorosan platform, offering a comprehensive suite of functionalities:

  • SorosanSDK: This module provides essential methods for SDK usage, including contract interaction, unit conversion, gas estimation, and more.

  • ContractSDK: With ContractSDK, you can easily deploy contracts, work with WebAssembly (wasm), and retrieve contract information, such as wasmID, code, ABI, and more.

  • TokenSDK: Seamlessly integrate token-related functionality, such as retrieving token names and symbols, deploying smart contract tokens, and wrapping assets, among other capabilities.

  • UtilSDK: Simplify common tasks in your Stellar network projects by leveraging utility functions designed to streamline your development process.

  • ExpansiveSDK: The Sorosan SDK is continuously evolving, promising even more capabilities over time as resources and development efforts expand.

Getting Started with Sorosan SDK

To start using Sorosan SDK, you can install the necessary packages via npm:

npm install @sorosan-sdk/core      # For Node.js/JavaScript/TypeScript applications
npm install @sorosan-sdk/react     # For React applications

SDK Resources

Explore the following resources to help you get started and make the most of Sorosan SDK:

  • NPM Package: Find the SDK package on NPM for easy installation.
  • Sample App SDK Usage: Check out a sample application that demonstrates how to use the Sorosan SDK.
  • SDK Documentation: Refer to the comprehensive documentation for in-depth information on SDK features and usage.
  • GitHub Repository: Access the SDK's GitHub repository to contribute, report issues, or stay updated on the latest developments.

How we built it

The entire codebase is done in Typescript and can be accessible to the node environment, making web development using Sorosan on Soroban easy.

Dapp

  • Typescript
  • Next.js
  • Vercel

SDK

  • Typescript
  • React
  • Stellar SDK
  • Freighter

Challenges we ran into

One of our main challenges was understanding how transactions work in Stellar. It was especially tough as it was our first time working with Rust, Stellar and Soroban compared to the basic experience with Ethereum Virtual Machine (EVM) blockchain. However, this challenge motivated us to create Sorosan, making it easier for other developers to work with Stellar.

Accomplishments that we're proud of

We're proud of several accomplishments during our journey, despite limited time for contract development. Learning Rust was a significant achievement. Despite time constraints, we managed to make valuable contributions to the project, leveraging our existing skills.

This journey was both challenging and achievable, requiring us to sharpen our technical skills in blockchain development, smart contract programming, and user interface design. It was a tremendous learning experience as we delved into decentralized networks and refined our problem-solving abilities.

What's next for SoroSan

In the future, SoroSan has promising plans for both the Sorosan Dapp and SDK: Updated: Since the hackathon's extension, Sorosan has improved a lot of its functionality and completed future tasks.

  • SDK Accessibility:
    • The main focus will be to make the Sorosan SDK more accessible by publishing it to npm. Soon, anyone can use it with a simple npm i --save sorosan/react installation and adding <SorosanProvider /> to their project. Sorosan SDK has been published. You can access Soroban via node.js with @sorosan-sdk/core and @sorosan-sdk/react for web base application. However we will continue to improve and add more features and more testing.
    • (Update currently working and test a separate node module for the SDK that can be used in Vue and Angular in relation to the completed React SDK) Sorosan SDK will be created as can be adopted to an Angular Service and will be looking into other frameworks such as Svelte.
  • Enhanced Contract Deployment:
    • Sorosan is expanding contract deployment capabilities beyond smart tokens and time locks. Given the ability to deploy custom contracts, we can expand on this and provide support for NFTs, DAOs, and DEFI contracts, fostering collaboration with other Web3 projects. (Check out our POC of NFT Smart contract
  • Diverse Dapp Tools:
    • The Sorosan Dapp will receive more tools and utilities, including NFT support and a streamlined way to interact with custom WebAssembly (wasm) contracts.

These updates reflect Sorosan's commitment to a user-friendly experience and its potential to revolutionize the Stellar network and the wider Web3 ecosystem. Free feel to check out our roadmap or dapp and stay tuned for these exciting developments.

Resources

Many more features to be made to make the Soroban experience easy. https://github.com/Sorosan

Built With

Share this project:

Updates