Shared Utilities

The project does not include a centralized Solidity library for common utilities. Instead, shared functionality is embedded within module-specific folders (e.g., interfaces/, adapters/, handlers/). A small number of scripting utilities also support off-chain operations.

TypeScript Utility

read-json-files.ts

  • Located in projects/common/

  • Likely used for reading config or deployment files (e.g., address mappings, JSON ABIs).

  • Intended to support scripting environments, not used in on-chain logic.

Interface and Utility Spread

  • Interface contracts like IVault, IAdapter, and IRateProvider are placed in their respective module folders.

  • Access control, math operations, and upgradeability are handled via OpenZeppelin contracts imported directly in each Solidity module.

Notes

  • Solidity-based shared logic is modular but not centralized.

  • Developers should reference the interface folders in each module for integration points.

  • External utility libraries (e.g., OpenZeppelin) are used instead of reimplementing core features.

Last updated