SeaGrants on allo-v2

SeaGrants is a decentralized application (dapp) built on top of allo-v2, designed for on-chain interactions. It leverages the allo-v2-sdk for seamless integration, demonstrating best practices for other dapps built on allo-v2 by isolating contract interactions from core business logic.

All the data needed are indexed via spec and can be found at spec.dev/allov2.
The actual postgres database code is hosted at allo-v2-spec

Key Functionalities

1. Profile Management

Users can create and manage profiles on the Registry. These profiles can be utilized within the application or created using the allo-v2-sdk and is offered when the recipient is submitting an application

2. Custom Strategy Deployment

The core functionality involves deploying a custom strategy (MicroGrants) for each pool, enabling specific features and behaviors tailored to the needs of the MicroGrants community.

3. Pool Operations

  • Creating a MicroGrantStrategy Pool: Users can initiate the creation of a MicroGrantStrategy Pool, defining its parameters and specifications (pool amount and token, maximum amount which can be requeted, approval threshold needed for application to be accepted)

  • Allocator Management: Pool managers have the ability to maintain a list of allocators authorized to allocate applications within the pool. The dapp offer a form and csv option to do this

  • Application Submission: Recipients can submit applications during the allocation period, specifying an amount within the threshold set by the pool manager.

  • Profile Usage: When creating an application, users are expected to utilize an existing profile from the Registry or create one via the allo-v2-sdk.

  • Allocation Mechanism: Valid allocators can vote to accept or reject applications.

  • Funds Disbursement: Once an application reaches the threshold of accepted allocations, the application is marked as accepted, and the requested funds are sent to the recipient at the specified address.

4. Frontend Data Indexing

Data essential for frontend rendering has been indexed by spec. This indexed data is publicly accessible, allowing external parties to leverage information seamlessly.

Implemented Features

Core Features

  • Application Workflow:
    • Submit an application
    • Review an application
    • Ensure funds are sent to an approved application
    • Screen displaying the overall summary of MicroGrants activities

Revised Features

Replaced Features

  • Pool Creation Flow: Replaced by a more intuitive pool creation screen instead of relying on script
  • Rich Markdown Support for Metadata
  • Allocator Management Flow: Replaced by a more intuitive allocator management screen.
  • User Profile Selection: Recipients can now select a profile or create a new one during the application submission process.
  • Landing Page: Replaced with a comprehensive landing page showcasing all MicroGrants pools.

Callouts and Considerations

  • Testing Environment: The application has undergone rigorous testing on the Goerli testnet. Extending to mainnet networks is feasible but requires thorough configuration and testing on both contract interaction and indexing components.

  • Spec Global Database: The global database needs purging as it contains data from the pre-audit stage. Collaboration with Ben is essential for this administrative operation.