Files
CurrenciCombo/docs/DEVELOPER_ONBOARDING.md
defiQUG f52313e7c6 Enhance ComboHandler and orchestrator functionality with access control and error handling improvements
- Added AccessControl to ComboHandler for role-based access management.
- Implemented gas estimation for plan execution and improved gas limit checks.
- Updated execution and preparation methods to enforce step count limits and role restrictions.
- Enhanced error handling in orchestrator API endpoints with AppError for better validation feedback.
- Integrated request timeout middleware for improved request management.
- Updated Swagger documentation to reflect new API structure and parameters.
2025-11-05 17:55:48 -08:00

1.8 KiB

Developer Onboarding Guide

Prerequisites

  • Node.js 18+
  • npm or yarn
  • Git
  • Docker (optional)
  • PostgreSQL (for local development)
  • Redis (optional, for caching)

Setup

1. Clone Repository

git clone https://github.com/your-org/CurrenciCombo.git
cd CurrenciCombo

2. Frontend Setup

cd webapp
npm install
cp .env.example .env.local
# Edit .env.local with your configuration
npm run dev

3. Backend Setup

cd orchestrator
npm install
cp .env.example .env
# Edit .env with your configuration
npm run migrate
npm run dev

4. Smart Contracts Setup

cd contracts
npm install
npm run compile
npm run test

Development Workflow

Making Changes

  1. Create a feature branch: git checkout -b feature/your-feature
  2. Make changes
  3. Run tests: npm test
  4. Lint code: npm run lint
  5. Commit: git commit -m "feat: your feature"
  6. Push: git push origin feature/your-feature
  7. Create Pull Request

Code Style

  • TypeScript for all new code
  • Follow ESLint configuration
  • Use Prettier for formatting
  • Write JSDoc comments for public APIs

Testing

  • Write unit tests for utilities
  • Write integration tests for API endpoints
  • Write E2E tests for user flows
  • Maintain >80% code coverage

Project Structure

CurrenciCombo/
├── webapp/           # Next.js frontend
├── orchestrator/     # Express backend
├── contracts/        # Smart contracts
└── docs/            # Documentation

Key Concepts

  • Plans: Multi-step financial workflows
  • Steps: Individual operations (borrow, swap, repay, pay)
  • 2PC: Two-phase commit for atomic execution
  • Compliance: LEI/DID/KYC/AML requirements

Getting Help

  • Check documentation in docs/
  • Review code comments
  • Ask questions in team chat
  • File issues for bugs

Last Updated: 2025-01-15