Initial commit: add .gitignore and README
This commit is contained in:
49
.gitignore
vendored
Normal file
49
.gitignore
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
# Dependencies
|
||||
node_modules/
|
||||
.pnpm-store/
|
||||
vendor/
|
||||
|
||||
# Package manager lock files (optional: uncomment to ignore)
|
||||
# package-lock.json
|
||||
# yarn.lock
|
||||
|
||||
# Environment and secrets
|
||||
.env
|
||||
.env.local
|
||||
.env.*.local
|
||||
*.env.backup
|
||||
.env.backup.*
|
||||
|
||||
# Logs and temp
|
||||
*.log
|
||||
logs/
|
||||
*.tmp
|
||||
*.temp
|
||||
*.tmp.*
|
||||
|
||||
# OS
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
*~
|
||||
|
||||
# Build / output
|
||||
dist/
|
||||
build/
|
||||
.next/
|
||||
out/
|
||||
*.pyc
|
||||
__pycache__/
|
||||
.eggs/
|
||||
*.egg-info/
|
||||
.coverage
|
||||
htmlcov/
|
||||
|
||||
# Optional
|
||||
.reports/
|
||||
reports/
|
||||
329
README.md
Normal file
329
README.md
Normal file
@@ -0,0 +1,329 @@
|
||||
# Defi-Mix-Tooling - Monorepo
|
||||
|
||||
**Status**: ✅ **Active**
|
||||
**Purpose**: Unified monorepository for DeFi tooling and development frameworks. Consolidates multiple DeFi projects into a single structure with shared code and tooling.
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
Defi-Mix-Tooling is a monorepository that consolidates DeFi development tools, starter kits, and execution frameworks. This enables shared code, unified versioning, simplified dependency management, and coordinated development across all DeFi tooling projects.
|
||||
|
||||
---
|
||||
|
||||
## Monorepo Structure
|
||||
|
||||
This monorepo uses git submodules to manage related projects:
|
||||
|
||||
```
|
||||
Defi-Mix-Tooling/
|
||||
├── .gitmodules # Git submodules configuration
|
||||
├── 27-combi/ # Aave Stablecoin Looping Tool (submodule)
|
||||
├── 237-combo/ # DeFi Starter Kit (submodule)
|
||||
├── CurrenciCombo/ # ISO-20022 Combo Flow (submodule)
|
||||
├── strategic/ # TypeScript CLI + Solidity Atomic Executor (submodule)
|
||||
├── no_five/ # DBIS Atomic Amortizing Leverage Engine (submodule)
|
||||
├── asle/ # Ali & Saum Liquidity Engine (submodule)
|
||||
├── packages/ # Shared packages (planned)
|
||||
│ ├── defi-shared/ # Shared DeFi utilities
|
||||
│ ├── defi-types/ # TypeScript types for DeFi
|
||||
│ ├── defi-protocols/ # Protocol integration libraries
|
||||
│ └── defi-simulator/ # DeFi simulation utilities
|
||||
├── tools/ # Development tools (planned)
|
||||
└── docs/ # Documentation (planned)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Submodules
|
||||
|
||||
### 27-combi
|
||||
**Status**: ✅ Active
|
||||
**Description**: Aave Stablecoin Looping Tool - A TypeScript/Node.js tool for executing stablecoin leverage loops on Aave v3.
|
||||
|
||||
**Features**:
|
||||
- Multi-chain support
|
||||
- Configurable wallet providers
|
||||
- DEX integrations
|
||||
- Comprehensive safety monitoring
|
||||
|
||||
### 237-combo
|
||||
**Status**: ✅ Active
|
||||
**Description**: DeFi Starter Kit - A comprehensive TypeScript + Foundry starter kit for building on core DeFi protocols.
|
||||
|
||||
**Features**:
|
||||
- Aave v3, Uniswap v3/v4, Protocolink integrations
|
||||
- Compound III, Balancer v3, Curve crvUSD support
|
||||
- Multi-chain support
|
||||
- Type-safe integrations
|
||||
- Comprehensive testing framework
|
||||
|
||||
### CurrenciCombo
|
||||
**Status**: ✅ Active
|
||||
**Description**: ISO-20022 Combo Flow - A visual workflow builder for composing multi-step financial transactions.
|
||||
|
||||
**Features**:
|
||||
- Combines ISO-20022 banking messages with DLT operations
|
||||
- Web App, PWA, and DApp deployment models
|
||||
- 2PC (Two-Phase Commit) execution
|
||||
|
||||
### strategic
|
||||
**Status**: ✅ Active
|
||||
**Description**: TypeScript CLI + Solidity Atomic Executor - Full-stack TypeScript CLI scaffold with Solidity atomic executor.
|
||||
|
||||
**Features**:
|
||||
- Strategy JSON DSL
|
||||
- Protocol adapters (Aave, Compound, Uniswap, MakerDAO, Balancer, Curve, etc.)
|
||||
- Atomic execution via multicall or flash loan callback
|
||||
- Safety guards and multi-chain support
|
||||
|
||||
### no_five
|
||||
**Status**: ✅ Active
|
||||
**Description**: DBIS Atomic Amortizing Leverage Engine - A comprehensive, production-ready DeFi leverage system with atomic amortization cycles.
|
||||
|
||||
**Features**:
|
||||
- Automatically improves positions through atomic amortization cycles
|
||||
- Multi-provider flash loans (Aave, Balancer, Uniswap, DAI)
|
||||
- Multi-source yield aggregation (Aave, Balancer, Curve/Convex, Protocol revenue)
|
||||
- Recursive leverage kernel with amortization cycles
|
||||
- Governance guard and policy engine
|
||||
- Oracle adapter (Chainlink, Aave, Uniswap TWAP)
|
||||
- MEV bot infrastructure (TypeScript)
|
||||
- Production-ready with comprehensive test coverage
|
||||
|
||||
**Deployment**: ✅ Production ready on Ethereum Mainnet (18/18 contracts deployed)
|
||||
|
||||
### asle
|
||||
**Status**: ✅ Active
|
||||
**Description**: Ali & Saum Liquidity Engine - Hybrid cross-chain liquidity infrastructure with PMM, CCIP, ERC-2535 Diamond Standard, and ISO/ICC compliance.
|
||||
|
||||
**Features**:
|
||||
- DODO PMM (Proactive Market Maker) for efficient liquidity provision
|
||||
- Chainlink CCIP for secure cross-chain operations
|
||||
- ERC-2535 Diamond Standard for fully upgradeable smart contracts
|
||||
- ERC-1155 & ERC-4626 for multi-asset vaults and tokenization
|
||||
- Multi-mode compliance (Regulated/Fintech/Decentralized)
|
||||
- ISO 20022 & FATF Travel Rule compliance for institutional use
|
||||
- KYC/AML verification integration
|
||||
- OFAC sanctions screening
|
||||
- Real-World Asset (RWA) tokenization
|
||||
- RESTful and GraphQL APIs
|
||||
|
||||
---
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Clone with Submodules
|
||||
|
||||
```bash
|
||||
# Clone repository with all submodules
|
||||
git clone --recurse-submodules <repository-url>
|
||||
cd Defi-Mix-Tooling
|
||||
|
||||
# Or if already cloned, initialize submodules
|
||||
git submodule update --init --recursive
|
||||
```
|
||||
|
||||
### Update Submodules
|
||||
|
||||
```bash
|
||||
# Update all submodules to latest commits
|
||||
git submodule update --remote
|
||||
|
||||
# Update specific submodule
|
||||
cd 27-combi
|
||||
git pull origin main
|
||||
cd ..
|
||||
git add 27-combi
|
||||
git commit -m "Update 27-combi submodule"
|
||||
```
|
||||
|
||||
### Working with Submodules
|
||||
|
||||
```bash
|
||||
# Work on a submodule
|
||||
cd 237-combo
|
||||
# Make changes and commit
|
||||
git add .
|
||||
git commit -m "Your changes"
|
||||
git push
|
||||
cd ..
|
||||
|
||||
# Update parent repo to reference new submodule commit
|
||||
git add 237-combo
|
||||
git commit -m "Update 237-combo submodule reference"
|
||||
git push
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Shared Resources (Planned)
|
||||
|
||||
### Shared Packages
|
||||
|
||||
**defi-shared**:
|
||||
- Common DeFi utilities
|
||||
- Protocol interaction helpers
|
||||
- Type definitions
|
||||
- Validation schemas
|
||||
|
||||
**defi-types**:
|
||||
- TypeScript types for DeFi protocols
|
||||
- Contract type definitions
|
||||
- Transaction types
|
||||
- Event types
|
||||
|
||||
**defi-protocols**:
|
||||
- Protocol integration libraries
|
||||
- Multi-protocol abstraction layer
|
||||
- Common protocol patterns
|
||||
|
||||
**defi-simulator**:
|
||||
- DeFi simulation utilities
|
||||
- Transaction simulation
|
||||
- Strategy backtesting
|
||||
- Risk analysis tools
|
||||
|
||||
---
|
||||
|
||||
## Technology Stack
|
||||
|
||||
### Shared Technologies
|
||||
- **TypeScript**: Primary language
|
||||
- **Foundry**: Solidity development and testing
|
||||
- **Node.js**: Runtime environment
|
||||
- **pnpm**: Package manager (recommended)
|
||||
|
||||
### Protocol Integrations
|
||||
- Aave v3
|
||||
- Uniswap v3/v4
|
||||
- Compound III
|
||||
- Balancer v3
|
||||
- Curve crvUSD
|
||||
- Protocolink
|
||||
- MakerDAO
|
||||
- 1inch/0x
|
||||
- Lido
|
||||
- GMX
|
||||
|
||||
---
|
||||
|
||||
## Development Workflow (Planned)
|
||||
|
||||
### Monorepo Tooling
|
||||
- **Package Manager**: pnpm workspaces (recommended)
|
||||
- **Build Tool**: Turborepo or Nx
|
||||
- **Testing**: Foundry (Solidity), Vitest/Jest (TypeScript)
|
||||
- **Linting**: ESLint, Solidity linters
|
||||
|
||||
### Development Commands
|
||||
|
||||
```bash
|
||||
# Install dependencies for all projects
|
||||
pnpm install
|
||||
|
||||
# Build all projects
|
||||
pnpm build
|
||||
|
||||
# Test all projects
|
||||
pnpm test
|
||||
|
||||
# Lint all projects
|
||||
pnpm lint
|
||||
|
||||
# Type check all projects
|
||||
pnpm type-check
|
||||
```
|
||||
|
||||
### Project-Specific Commands
|
||||
|
||||
```bash
|
||||
# Work with specific submodule
|
||||
cd 27-combi
|
||||
pnpm install
|
||||
pnpm build
|
||||
pnpm test
|
||||
|
||||
# Or use filter (if using pnpm workspaces)
|
||||
pnpm --filter 27-combi build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Integration Points
|
||||
|
||||
### Shared DeFi Libraries
|
||||
Projects in this monorepo can share:
|
||||
- Protocol interaction utilities
|
||||
- Type definitions
|
||||
- Simulation tools
|
||||
- Testing frameworks
|
||||
- Common configurations
|
||||
|
||||
### Cross-Project Usage
|
||||
- **237-combo** starter kit can be used as foundation for other projects
|
||||
- **strategic** executor can execute strategies from other projects
|
||||
- **CurrenciCombo** workflows can integrate with other tools
|
||||
- **27-combi** patterns can be reused across projects
|
||||
- **no_five** leverage engine can be integrated with other DeFi tools
|
||||
- **asle** liquidity infrastructure can provide cross-chain liquidity for other projects
|
||||
|
||||
---
|
||||
|
||||
## CI/CD Pipeline (Planned)
|
||||
|
||||
### Workflow
|
||||
1. **Lint & Type Check**: All TypeScript projects
|
||||
2. **Solidity Compilation**: Foundry projects
|
||||
3. **Unit Tests**: TypeScript and Solidity tests
|
||||
4. **Integration Tests**: Cross-project integration
|
||||
5. **Build**: Build all packages
|
||||
6. **Deploy**: Deploy packages to npm registry (if applicable)
|
||||
|
||||
---
|
||||
|
||||
## Documentation
|
||||
|
||||
Each submodule maintains its own documentation:
|
||||
- **[27-combi](../27-combi/)** - Aave looping tool docs
|
||||
- **[237-combo](../237-combo/)** - DeFi starter kit docs
|
||||
- **[CurrenciCombo](../CurrenciCombo/)** - ISO-20022 combo flow docs
|
||||
- **[strategic](../strategic/)** - Atomic executor docs
|
||||
- **[no_five](../no_five/)** - DBIS Atomic Amortizing Leverage Engine docs
|
||||
- **[asle](../asle/)** - Ali & Saum Liquidity Engine docs
|
||||
|
||||
Monorepo-level documentation will be added as shared packages are developed.
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
When contributing:
|
||||
|
||||
1. Follow DeFi development best practices
|
||||
2. Use shared packages where applicable
|
||||
3. Test across protocols
|
||||
4. Update documentation
|
||||
5. Ensure security best practices
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
[To be determined - will align across projects]
|
||||
|
||||
---
|
||||
|
||||
## Status
|
||||
|
||||
**Current Status**: ✅ Active
|
||||
**Next Steps**:
|
||||
- Create shared packages
|
||||
- Set up monorepo tooling
|
||||
- Extract common code to shared packages
|
||||
- Configure unified CI/CD
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-01-27
|
||||
|
||||
Reference in New Issue
Block a user