{"id":37197326,"url":"https://github.com/fathimasithara01/tradeverse","last_synced_at":"2026-01-14T22:56:27.733Z","repository":{"id":308709729,"uuid":"1027803596","full_name":"fathimasithara01/tradeverse","owner":"fathimasithara01","description":"A production-ready multi-role copy trading platform built with Golang, Clean Architecture, Domain-Driven Design, and PostgreSQL — including Admin, Trader, and Customer modules with automated trade execution, RBAC, subscriptions, wallets, and scalable domain separation.","archived":false,"fork":false,"pushed_at":"2025-12-05T15:53:27.000Z","size":3427,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-08T12:58:22.153Z","etag":null,"topics":["automation","backend","clean-architecture","copy-trading","crone-job","ddd","go","golang","postgres","rbac","saas","seeder"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fathimasithara01.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-28T14:57:34.000Z","updated_at":"2025-12-06T08:39:55.000Z","dependencies_parsed_at":"2025-08-07T13:11:11.990Z","dependency_job_id":"14541108-92b0-4440-a734-4d41bc4707e7","html_url":"https://github.com/fathimasithara01/tradeverse","commit_stats":null,"previous_names":["fathimasithara01/tradeverse"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fathimasithara01/tradeverse","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathimasithara01%2Ftradeverse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathimasithara01%2Ftradeverse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathimasithara01%2Ftradeverse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathimasithara01%2Ftradeverse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fathimasithara01","download_url":"https://codeload.github.com/fathimasithara01/tradeverse/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathimasithara01%2Ftradeverse/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28437430,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T22:37:52.437Z","status":"ssl_error","status_checked_at":"2026-01-14T22:37:31.496Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","backend","clean-architecture","copy-trading","crone-job","ddd","go","golang","postgres","rbac","saas","seeder"],"created_at":"2026-01-14T22:56:27.103Z","updated_at":"2026-01-14T22:56:27.694Z","avatar_url":"https://github.com/fathimasithara01.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\nA production-ready multi-role fintech platform with real-time trading,\nwallet ledgering, subscription automation, and admin controls — built using\nGolang, PostgreSQL, Clean Architecture, and Cron Workers.\n\n# Tradeverse – Multi-Role Trading Automation Platform\n\n[![Go Version](https://img.shields.io/badge/Go-1.21+-00ADD8?logo=go)]()\n[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-15+-336791?logo=postgresql)]()\n[![License](https://img.shields.io/badge/License-MIT-green.svg)]()\n[![Build Status](https://img.shields.io/badge/Status-Production--Ready-success)]()\n[![PRs Welcome](https://img.shields.io/badge/PRs-Welcome-blue.svg)]()\n\nA production-grade **trading, wallet, and subscription automation system** built using\n**Golang, PostgreSQL, Clean Architecture, Cron Jobs, RBAC, and Real-Time Market APIs.**\n\nTradeverse is designed as a **multi-role fintech platform** supporting:\n\n* **Admin**\n* **Trader**\n* **Customer**\n\nIt follows strict engineering standards similar to real-world fintech systems.\n\n---\n\n##  Overview\n\nTradeverse includes:\n\n* Real-time market price fetching (OHLC / snapshot)\n* Automated subscription lifecycle (expiry, disable, notify)\n* Wallet system with strict ledger consistency\n* Trader signal publishing + analytics\n* Dynamic admin-driven pricing\n* JWT + RBAC (Admin / Trader / Customer)\n* Cron-based background workers\n* Full Admin UI\n\nThis project demonstrates **scalable backend architecture**, **clean code**, and **production-level fintech engineering**.\n\n---\n\n##  Features\n\n###  Cron Jobs (Schedulers)\n\n* Real-time market data fetcher\n* Configurable intervals\n* Retry + rate limiting\n* Normalized OHLC storage\n\n###  Subscription Automation\n\n* Auto-expiry\n* Auto-disable access\n* Notification triggers\n* Batch-optimized\n\n###  Admin UI\n\n* User CRUD\n* Commission \u0026 pricing configuration\n* API key / cron intervals\n* Dashboard + charts\n\n###  Dynamic Pricing\n\n* Commission % control\n* DB-driven pricing\n* Trader-specific plans\n\n###  Signal Cards\n\n* Entry, SL, targets\n* Live price\n* Color-coded cards\n* Trader info\n\n###  RBAC (Role Based Access Control)\n\n* Admin / Trader / Customer\n* JWT with role + plan + expiry\n* Backend + UI-controlled access\n\n###  User Management\n\n* CRUD\n* Role assignment\n* Block/Unblock\n* Subscription status\n\n###  Dashboard Insights\n\n* Revenue analytics\n* Live prices\n* Active subscriptions\n* Trader/customer statistics\n\n---\n\n##  Role Breakdown\n\n###  Customer\n\n* Signup / Login\n* Browse traders\n* Subscribe / Unsubscribe\n* Wallet deposit/withdraw/history\n* KYC uploads\n* View subscribed signals\n\n###  Trader\n\n* Create/publish signals\n* Live trade updates\n* Subscription plans\n* Subscriber analytics\n* Profile management\n\n###  Admin\n\n* Manage users \u0026 traders\n* Pricing \u0026 commission rules\n* System settings\n* Dashboard analytics\n* Audit logs\n\n---\n\n##  Architecture Overview\n\n###  Clean Architecture Layers\n\n* **Handlers** — routing, request parsing\n* **Services** — business logic\n* **Repositories** — DB + external APIs\n* **Domain Models** — entities\n\n###  Project Structure\n\n```\ntradeverse/\n├── cmd/\n│   ├── admin/\n│   ├── trader/\n│   └── customer/\n├── config/\n├── internal/\n│   ├── admin/\n│   ├── trader/\n│   └── customer/\n├── migrations/\n├── pkg/\n│   ├── auth/\n│   ├── models/\n│   ├── payment_gateway.go\n│   ├── seeder/\n│   └── utils/\n├── static/\n├── templates/\n└── README.md\n```\n\n###  Request Flow\n\n```\nClient → Router → Handler → Service → Repository → PostgreSQL\n```\n\n---\n\n##  Core Modules\n\n###  Authentication\n\n* JWT-based\n* RBAC middleware\n* Claims contain role + subscription\n\n###  Wallet System\n\n* Deposit / Withdraw\n* Transaction ledger\n* Race-condition safe\n* Accurate balance tracking\n\n###  Trader Module\n\n* Signal CRUD\n* Live trade publishing\n* Subscription plans\n* Subscriber analytics\n\n###  Customer Module\n\n* Explore traders\n* Subscribe/unsubscribe\n* View signals\n* Wallet + KYC\n\n###  Admin Module\n\n* User \u0026 trader management\n* Plans \u0026 commissions\n* System configuration\n* Analytics dashboard\n\n---\n\n##  API Endpoints (High-Level)\n\n### Trader\n\n```\n/login\n/createSignal\n/getAllSignals\n/updateSignal\n/CreateTraderSubscriptionPlan\n/ListSubscribers\n/PublishLiveTrade\n/GetBalance\n/Deposit\n/Withdraw\n```\n\n### Customer\n\n```\n/signup\n/login\n/ListTraders\n/GetTraderDetails\n/SubscribeToTrader\n/GetSignalsFromSubscribedTraders\n/kycDocument\n/GetWalletSummary\n```\n\n### Admin\n\n```\n/ListAdminSubscriptionPlans\n/SubscribeToAdminPlan\n/CancelAdminSubscription\n```\n\n# Postman Collection (API Testing)\n\nTradeVerse includes a complete Postman setup for testing all Admin, Trader, and Customer API workflows.\n\n---\n\n##  Included Files\n\n| File | Purpose |\n|------|---------|\n| `/postman/TradeVerse_API_Collection.json` | Full API collection with all endpoints |\n| `/postman/TradeVerse_Environment.json` | Pre-configured environment variables |\n\n---\n\n##  How to Import\n\n1. Open **Postman**\n2. Click **Import**\n3. Select both:\n   - `TradeVerse_API_Collection.json`\n   - `TradeVerse_Environment.json`\n4. Set active environment: **TradeVerse Local**\n\n---\n\n##  Required Environment Variables (Manual Setup)\n\nBASE_URL        = http://localhost:8080\nADMIN_TOKEN     = \u003cafter admin login\u003e\nTRADER_TOKEN    = \u003cafter trader login\u003e\nCUSTOMER_TOKEN  = \u003cafter customer login\u003e\n\n---\n\n##  What You Can Test\n* Authentication (Admin/Trader/Customer)\n\n* Wallet operations (deposit/withdraw/ledger)\n\n* Trader signals\n\n* Live trade updates\n\n* Subscriptions\n\n* KYC uploads\n\n* Market data (OHLC + live)\n\n* Cron simulation\n\n* Dashboard analytics\n\n---\n\n## Why Important?\n* Recruiters test your backend instantly\n\n* Shows professional API documentation\n\n* Proves production-readiness\n\n---\n\n\n## 🛠 Tech Stack\n\n* **Golang (Gin Framework)**\n* **PostgreSQL**\n* **GORM ORM**\n* **Cron Jobs**\n* **Server-rendered Admin UI**\n* **JWT Authentication**\n* **Clean Architecture + DDD**\n* **Docker Ready**\n\n---\n\n##  Internals Summary\n\n* Market Fetcher — cron-based OHLC + price\n* Subscription Watcher — auto-expiry\n* RBAC Engine — role logic\n* Admin Configuration\n* Signal Cards with real-time data\n* Dashboard analytics\n\n---\n\n##  Running the Project\n\n### Start Admin\n\n```sh\ngo run cmd/admin/main.go\n```\n\n### Start Trader\n\n```sh\ngo run cmd/trader/main.go\n```\n\n### Start Customer\n\n```sh\ngo run cmd/customer/main.go\n```\n\n### Run Migrations\n\n```sh\ngo run internal/migrations/main.go\n```\n\n### Seed Data\n\n```sh\ngo run pkg/seeder/main.go\n```\n\n---\n\n##  Run Locally\n\n```bash\ngit clone https://github.com/fathimasithara01/tradeverse\ncd tradeverse\ncp .env.example .env\ngo mod tidy\ngo run cmd/server/main.go\n\n\n##  Security\n\n* JWT expiry + rotation\n* Secrets via Vault / AWS SM\n* SQL injection protection\n* HTTPS + Nginx\n* CORS restrictions\n* Rate limiting\n\n---\n\n##  Deployment\n\n* Docker / Docker Compose\n* Kubernetes-ready\n* Worker containers\n* Prometheus metrics\n* Redis caching \u0026 pub/sub\n* Cloud PostgreSQL\n\n---\n\n##  Why This Project is Valuable for Recruiters\n- Shows backend ownership end-to-end\n- Demonstrates realistic fintech domain knowledge\n- Highlights distributed cron workers \u0026 automation\n- Proves understanding of architecture \u0026 scalability\n- Perfect fit for Backend (Golang) / Fintech / SaaS roles\n\n\n##  Why This Project Stands Out\n\n* Rare multi-role fintech system\n* Realistic wallet + subscription engine\n* Clean Architecture + DDD\n* Horizontally scalable\n* Production-like engineering\n\n---\n\n##  System Diagram\n\n```\n       +-----------------------+\n       |      Client (UI)      |\n       +-----------+-----------+\n                   |\n                   v\n          +--------+--------+\n          |     API Layer    |\n          |   (Gin Handlers) |\n          +--------+--------+\n                   |\n                   v\n          +--------+--------+\n          |     Services     |\n          | (Business Logic) |\n          +--------+--------+\n                   |\n                   v\n          +--------+--------+\n          |   Repositories   |\n          |    (DB Layer)    |\n          +--------+--------+\n                   |\n                   v\n          +-------------------+\n          |   PostgreSQL DB   |\n          +-------------------+\n```\n\n---\n\n##  Author\n\n**Fathima Sithara**\nBackend Developer — Golang • Microservices • Fintech\nEmail: fathimasithara011@gmail.com\nGitHub: github.com/fathimasithara01\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffathimasithara01%2Ftradeverse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffathimasithara01%2Ftradeverse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffathimasithara01%2Ftradeverse/lists"}