Technical Documentation
This monorepo contains two main components that work together to power the Agora platform.
Core
The core/ directory houses the smart contract infrastructure, built using Hardhat and TypeScript. It includes:
Contracts: Solidity smart contracts for private proposals, proposal factories, space registries, and mock tokens for testing.
Deployment: Scripts and configurations for deploying contracts to various networks.
Tests: Comprehensive test suites for verifying contract functionality.
Tasks: Hardhat tasks for interacting with deployed contracts.
Key features:
Private proposal creation and management
Automated proposal deployment
Space registry for organizing governance spaces
Integration with ERC721 and governance tokens
Frontend
The frontend/ directory contains a Next.js web application that provides the user interface for the Agora platform. It includes:
Next.js App: A modern React-based web application with routing and API endpoints.
Subgraph Integration: TheGraph subgraph for indexing and querying blockchain data efficiently.
Components: Reusable UI components built with Tailwind CSS and shadcn/ui.
Wallet Integration: Support for various wallets using Wagmi and other libraries.
Key features:
Dashboard for managing proposals and spaces
Encrypted proposal handling using FHEVM
Real-time data fetching via Apollo GraphQL
Responsive design for desktop and mobile
Getting Started
To get started with development, refer to the individual README files in the core/ and frontend/ directories for setup instructions.
Last updated