Migration Overview - Node.js to Go
π Migration Status
Status: π‘ In Progress - Phase 0
Started: October 6, 2025
Target Completion: 8 weeks (6 phases)
π― Migration Goal
Migrate the complete Node.js backend (gitibot-back-main/) to Go microservices while:
- β Maintaining all existing features
- β Preserving all external API integrations
- β Improving performance and reliability
- β Enabling independent service deployment
- β Following Go best practices and design patterns
π Overall Progress
Phase 0: Foundation [ββββββββββ] 0% (0/5 tasks)
Phase 1: Core Services [ββββββββββ] 0% (0/3 tasks)
Phase 2: Financial Services [ββββββββββ] 0% (0/3 tasks)
Phase 3: User Services [ββββββββββ] 0% (0/3 tasks)
Phase 4: Integration [ββββββββββ] 0% (0/4 tasks)
Phase 5: Production [ββββββββββ] 0% (0/3 tasks)
Phase 6: Testing [ββββββββββ] 0% (0/3 tasks)
Total: 0/24 tasks completed (0%)
πΊοΈ Migration Phases
Phase 0: Foundation (Week 1) π΄ CURRENT
Goal: Fix critical infrastructure
Tasks:
- Fix TON Signer (integrate tonutils-go)
- Fix TRON Signer (implement secp256k1 + keccak256)
- Complete TON Watcher (blockchain monitoring)
- Complete TRON Watcher (TRC20 monitoring)
- Create Balance Service (RPC queries + caching)
Deliverable: Can create wallets, detect deposits, query balances
Phase 1: Core Services (Week 2)
Goal: Enable TMA to display real data
Tasks:
- Create Market Service (prices, charts)
- Create Transaction Service (history, trading)
- Add Gateway Routes (40+ REST endpoints)
Deliverable: TMA shows real prices and transaction history
Phase 2: Financial Services (Week 3-4)
Goal: Complete financial operations
Tasks:
- Create Payment Service (Paystar, FinnoTech)
- Create Voucher Service (PS, HOT, UTOPIA)
- Create Blockchain Service (Exonyx integration)
Deliverable: Can process payments, vouchers, blockchain operations
Phase 3: User Services (Week 5)
Goal: Complete user experience
Tasks:
- Create Support Service (tickets)
- Create KYC Service (verification)
- Extend Account Service (identity, level-up)
Deliverable: Support tickets, KYC workflows working
Phase 4: Integration (Week 6)
Goal: End-to-end flows working
Tasks:
- Admin Panel Backend
- WebSocket Server
- Complete Deposit Flow
- Complete Withdrawal Flow
Deliverable: All flows working end-to-end
Phase 5: Production (Week 7)
Goal: Production-ready deployment
Tasks:
- Dockerize all services
- Complete docker-compose
- Port all database migrations
Deliverable: Can deploy independently, fully tested
Phase 6: Testing (Week 8)
Goal: Launch ready
Tasks:
- Frontend API integration
- Integration testing
- Monitoring & observability
Deliverable: Production launch ready
π What’s Being Migrated
Node.js Backend Features:
- 20+ API Controllers
- 25+ Database Models
- 25+ Business Services
- 7 External API Integrations
- Complete Telegram Bot
- Admin Panel Backend
External APIs to Port:
| Service | Purpose | Status |
|---|---|---|
| Exonyx | Blockchain operations | β³ Phase 2 |
| Paystar | payment gateway | β³ Phase 2 |
| FinnoTech | banking API | β³ Phase 2 |
| PS Voucher | Gaming vouchers | β³ Phase 2 |
| HOT Voucher | Hot wallet vouchers | β³ Phase 2 |
| UTOPIA | UUSD vouchers | β³ Phase 2 |
| CoinGecko/CMC | Crypto prices | β³ Phase 1 |
π― Success Criteria
Phase 0 Complete When:
- β Can create TON wallets with valid addresses
- β Can create TRON wallets with valid T… addresses
- β TON watcher detects deposits
- β TRON watcher detects USDT deposits
- β Balance service returns correct balances
Full Migration Complete When:
- β All 40+ TMA endpoints working
- β All 7 external APIs integrated
- β All Node.js features ported
- β Admin panel fully functional
- β End-to-end flows working
- β All services containerized
- β Monitoring operational
- β Can handle production load
π How to Contribute to Migration
1. Pick a Task
Browse the Task Breakdown and find an unclaimed task.
2. Read Task Details
Each task has:
- Detailed implementation steps
- Reference to Node.js code
- Testing checklist
- Success criteria
3. Implement
Follow the implementation steps exactly. Reference Node.js code for business logic understanding.
4. Test
Write unit tests and integration tests. Verify against Node.js behavior.
5. Update Progress
Mark task complete in Progress Tracker.
6. Document
Update relevant docs with any changes or learnings.
π Need Help?
- Task unclear? Check detailed breakdown in task-specific docs
- Can’t find Node.js reference? Use
grep -r "function" gitibot-back-main/ - Test failures? Compare with Node.js behavior, add debug logs
- Stuck? Ask in #gitinext-backend Slack channel
π Important Links
- Task Breakdown - All 24 tasks
- Progress Tracker - Current status
- Architecture - System design
- API Reference - All endpoints
Let’s build this! π