A production-ready Web3 DeFi application for issuing and managing ACTUS-compliant financial instruments on Radix DLT. This platform enables financial institutions to create, manage, and track blockchain-based financial instruments with ACTUS-standard cash flow calculations.
- Node.js 18+
- Docker & Docker Compose
- Radix Wallet (for blockchain interactions)
# Clone the repository
git clone <repository-url>
cd bond-platform
# Run automated setup (Windows)
.\setup.ps1
# Or for Mac/Linux
chmod +x setup.sh
./setup.sh
# Start all services
docker-compose up -d --build
# Access the application
open http://localhost:3000# Start ACTUS Engine
cd actus-engine && npm start
# Start Backend API (new terminal)
cd backend && npm run start:dev
# Start Frontend (new terminal)
cd frontend && npm run dev
# Access at: http://localhost:5173โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ACTUS Bond Platform โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Frontend (React) Backend (NestJS) ACTUS Engine โ
โ - Bond Issuance - REST API - Cash Flows โ
โ - Portfolio Mgmt - Radix Integration - ACTUS Standards โ
โ - Analytics - Database Layer - Calculations โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Radix DLT Network โ
โ (Stokenet/Mainnet) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- ๐ฆ Multi-Role Dashboards - Issuer, Investor, Compliance, Regulator
- ๐ ACTUS Compliance - Full implementation of ACTUS financial standards
- ๐ Radix DLT Integration - Blockchain-ready smart contracts
- ๐ฐ Cash Flow Simulation - Interactive charts and payment schedules
- ๐ Portfolio Analytics - Real-time tracking and reporting
- ๐ฏ Production Ready - Containerized, scalable, secure
bond-platform/
โโโ ๐ frontend/ # React TypeScript Frontend
โ โโโ src/components/ # UI Components
โ โโโ src/types/ # TypeScript definitions
โ โโโ src/utils/ # Utilities & Radix integration
โ โโโ vite.config.ts # Build configuration
โโโ ๐ backend/ # NestJS Backend API
โ โโโ src/controllers/ # REST API endpoints
โ โโโ src/services/ # Business logic
โ โโโ src/models/ # Data models
โ โโโ main.ts # Application entry point
โโโ ๐ scrypto-contracts/ # Radix Smart Contracts
โ โโโ src/lib.rs # Bond instrument blueprints
โ โโโ Cargo.toml # Rust dependencies
โโโ ๐ actus-engine/ # ACTUS Calculation Service
โ โโโ server.js # Financial calculations API
โโโ ๐ deployment/ # Production deployment
โโโ ๐ scripts/ # Automation scripts
โโโ ๐ docker-compose.yml # Container orchestration
- ACTUS Contract Types: PAM, ANN, NAM, LAM, SWAP
- Flexible Terms: Notional, interest rates, maturity, payment cycles
- Real-time Validation: ACTUS-standard compliance checking
- Interactive Charts: Line charts, bar charts, payment timelines
- Amortization Tables: Period-by-period breakdown
- Export Capabilities: CSV, JSON data export
- Dashboard Analytics: Total value, active instruments, performance
- Instrument Tracking: Status, maturity, cash flows
- Risk Metrics: Duration, convexity, yield calculations
- Smart Contracts: Scrypto blueprints for bond instruments
- Wallet Integration: Radix Wallet connectivity
- Transaction Management: Deployment and execution on Radix network
- React 18 with TypeScript
- Vite for fast development builds
- Tailwind CSS for styling
- Recharts for data visualization
- Radix UI components
- NestJS framework with TypeScript
- REST API with validation
- Modular architecture with services and controllers
- Error handling and logging
- Radix DLT for blockchain layer
- Scrypto smart contracts
- Component-based architecture
- Transaction manifest support
- Docker containerization
- PostgreSQL for data persistence
- Nginx for static file serving
- Health checks and monitoring
| Type | Code | Description | Use Case |
|---|---|---|---|
| Principal at Maturity | PAM | Zero-coupon bond | Corporate bonds |
| Annuity | ANN | Fixed payments with amortization | Mortgages, loans |
| Negative Amortization | NAM | Growing principal | Student loans |
| Linear Amortization | LAM | Fixed principal reduction | Auto loans |
| Interest Rate Swap | SWAP | Fixed-for-floating exchange | Hedging |
- IP - Interest Payment
- PR - Principal Repayment
- FP - Fee Payment
- DV - Dividend Payment
# Using Docker (Recommended)
docker-compose up -d --build
# Using Development Servers
./start-dev.ps1 # Windows
./start-dev.sh # Mac/Linux# Build and deploy
docker-compose -f docker-compose.prod.yml up -d
# Environment variables
cp .env.example .env
# Configure database, Radix network, API keys- DigitalOcean App Platform (Recommended)
- AWS ECS with Fargate
- Kubernetes with Helm charts
- Azure Container Instances
POST /bonds
GET /bonds
GET /bonds/:id
PUT /bonds/:id/deployPOST /actus/cashflows
GET /actus/contract-types
POST /actus/contracts/generatePOST /radix/deploy
POST /radix/execute
GET /radix/component/:addressinterface BondInstrument {
id: string;
terms: BondTerms;
cashFlows: CashFlow[];
componentAddress?: string;
status: 'draft' | 'deployed' | 'active' | 'matured';
createdAt: string;
}interface BondTerms {
contractType: string;
contractID: string;
currency: string;
notionalPrincipal: number;
nominalInterestRate: number;
maturityDate: string;
statusDate: string;
cycleAnchorDateOfInterestPayment: string;
cycleOfInterestPayment: string;
}- Input Validation with class-validator
- CORS Configuration for cross-origin requests
- Environment-based configuration
- Error handling and logging
- Rate limiting ready
- Frontend: Optimized React with code splitting
- Backend: NestJS with efficient dependency injection
- Database: PostgreSQL with connection pooling
- Caching: Redis-ready architecture
- Load Balancing: Horizontal scaling support
# Frontend tests
cd frontend && npm test
# Backend tests
cd backend && npm test
# E2E tests
npm run test:e2e
# Build verification
npm run build:verify- Bond instrument creation
- ACTUS cash flow calculations
- Portfolio management
- Basic Radix integration
- Secondary market trading
- Risk analytics dashboard
- Regulatory reporting
- Multi-currency support
- OAuth2 authentication
- Audit logging
- Advanced risk modeling
- Insurance integration
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow TypeScript best practices
- Write tests for new features
- Update documentation
- Use conventional commits
This project is licensed under the MIT License - see the LICENSE file for details.
- ACTUS Foundation for financial standards
- Radix DLT for blockchain infrastructure
- NestJS for backend framework
- React for frontend framework
- Documentation: docs.actus-bond-platform.com
- Issues: GitHub Issues
- Discord: Community Chat
- Email: support@actus-bond-platform.com
# Port already in use
docker-compose down
docker-compose up -d
# Build failures
docker system prune -a
docker-compose build --no-cache
# Database connection issues
docker-compose restart postgres# Check service logs
docker-compose logs frontend
docker-compose logs backend
docker-compose logs actus-engine
# Service health checks
curl http://localhost:3001/health
curl http://localhost:8083/actuator/health
# Database status
docker-compose exec postgres psql -U postgres -d actus_bond_platform