About the project
An archived P2P exchange prototype with ledger accounting and replaceable blockchain adapters.
An archived P2P exchange prototype with ledger accounting and replaceable blockchain adapters.
An archived P2P exchange prototype with ledger accounting and replaceable blockchain adapters.
CryptoExchange is an unfinished white-label Telegram P2P exchange. The valuable part is its backend model: offers, deals, disputes and reputation sit around a double-entry ledger and replaceable blockchain clients.
Makers publish fiat offers, takers open deals, and crypto is held in the internal ledger until completion, cancellation or dispute resolution. Network indexers detect deposits, while dedicated workers process accounting, withdrawals and notifications.
Business state is committed in PostgreSQL; external chains are handled through adapters and workers.
User flows
Auth and commands
Offers, deals, disputes
Holds and atomic transitions
TON, EVM and TRON adapters
Deposits, withdrawals, notifications
Available and held funds are represented by balanced entries instead of mutable balance columns.
Unit of Work and row locks keep deal status, offer capacity and accounting mutations in one transaction.
Users, offers, deals, disputes and reputation follow the same model, schema, repository, service and provider layout.
BaseRPC and BaseIndexer isolate application logic from TON, EVM and TRON implementations selected through a registry.
Deposit, withdrawal, ledger and notification workers can restart and scale independently from the API.
The module boundaries describe the intended exchange lifecycle more clearly than the unfinished interface.
The core domain and ledger were developed further than the presentation layer. The frontend still contains mock-oriented screens, and deposit sweeping, withdrawal processing and ledger validation were not completed as a verified end-to-end release.