- Created .gitignore to exclude sensitive files and directories. - Added API documentation in API_DOCUMENTATION.md. - Included deployment instructions in DEPLOYMENT.md. - Established project structure documentation in PROJECT_STRUCTURE.md. - Updated README.md with project status and team information. - Added recommendations and status tracking documents. - Introduced testing guidelines in TESTING.md. - Set up CI workflow in .github/workflows/ci.yml. - Created Dockerfile for backend and frontend setups. - Added various service and utility files for backend functionality. - Implemented frontend components and pages for user interface. - Included mobile app structure and services. - Established scripts for deployment across multiple chains.
2.6 KiB
2.6 KiB
ASLE Architecture Documentation
System Architecture
Overview
ASLE uses a modular Diamond (ERC-2535) architecture with multiple facets handling different functionalities.
Smart Contract Architecture
Core Components
- Diamond.sol - Main proxy contract using ERC-2535 standard
- DiamondCutFacet - Manages facet additions/updates/removals
- DiamondInit - Initialization contract
Feature Facets
- LiquidityFacet - DODO PMM implementation
- VaultFacet - ERC-4626 and ERC-1155 vaults
- ComplianceFacet - Multi-mode compliance system
- CCIPFacet - Cross-chain messaging
- GovernanceFacet - DAO governance
- SecurityFacet - Emergency controls
- RWAFacet - Real-world asset tokenization
Libraries
- LibDiamond - Diamond storage management
- LibAccessControl - Role-based access control
- LibReentrancyGuard - Reentrancy protection
- PMMMath - DODO PMM calculations
Backend Architecture
API Layer
- REST API (Express.js)
- GraphQL API (Apollo Server)
- WebSocket for real-time updates
Service Layer
- ComplianceService - KYC/AML/OFAC
- CCIPService - Cross-chain tracking
- MonitoringService - Health and metrics
- MultiJurisdictionService - Regulatory compliance
- CustodialService - Wallet management
- BankService - SWIFT/ISO 20022
Data Layer
- PostgreSQL database
- Prisma ORM
- Redis for caching
Frontend Architecture
Framework
- Next.js 16 (App Router)
- React 19
- TypeScript
Key Libraries
- Wagmi/Viem for Web3
- React Query for data fetching
- Tailwind CSS for styling
- Recharts for visualizations
Cross-Chain Architecture
CCIP Integration
- Chainlink CCIP for messaging
- Multi-chain state synchronization
- Liquidity pool syncing
- Vault rebalancing
Data Flow
Pool Creation Flow
- User submits pool creation via frontend
- Frontend sends transaction to LiquidityFacet
- Contract validates and creates pool
- Event emitted and indexed
- Backend updates database
- Frontend refreshes pool list
Compliance Flow
- User requests compliance mode change
- Frontend calls ComplianceFacet
- Contract validates permissions
- Backend service verifies KYC/AML
- Compliance status updated
- Audit trail recorded
Security Model
Access Control
- Role-based permissions
- Multi-sig support
- Timelock for upgrades
Security Features
- Reentrancy guards
- Circuit breakers
- Emergency pause
- Price deviation monitoring
Deployment Architecture
Networks
- Ethereum Mainnet
- Polygon
- Arbitrum
- Optimism
- Base
Infrastructure
- Docker containers
- Kubernetes-ready
- Load balanced
- Monitored