- Giới thiệu dự án
- Giới thiệu nhóm
- Công nghệ sử dụng
- Tài liệu về System Requirement Specification (SRS)
- Các chức năng chính
- Cấu trúc các nhánh trên hệ thống
- Tham thảo thêm
Coin-price-be-go là hệ thống backend với chức năng chính là hỗ trợ người dùng việc theo dõi thông tin thị trường tiền điện tử (giá spot, future, kline,...), tạo các trigger thông báo biến động về giá sử dụng các API từ Binance, CoinMarketCap, CoinGecko.
Tên nhóm: Nhóm Ngọc Hiền Danh sách thành viên: 7 thành viên
MSSV | Họ tên | Role | Github | Nhiệm vụ |
---|---|---|---|---|
2211024 | Lê Ngọc Hiền | PO | HienLe2004, LeHien6601 | Tổ chức họp, đánh giá tiến độ, xây dựng cấu trúc dự án, phân chia công việc, hiện thực CI/CD |
2211101 | Nguyễn Thanh Hoàng | Dev | NTHKiris | Hiện thực các API về alerts và viết unit test, API doc kèm theo |
2210768 | Nguyễn Văn Đoàn | Dev | DoanJackson, anhchienne | Hiện thực các API về coin-price và viết unit test, API doc kèm theo |
2211144 | Nguyễn Trịnh Ngọc Huân | Dev | huannguyen2114 | Hiện thực các API về coin-price và viết unit test, API doc kèm theo |
2212962 | Trần Quang Tác | Dev | tacsquang | Hiện thực các API về admin, auth, user, payment và viết unit test, API doc kèm theo |
2210871 | Quách Khải Hào | Dev | quachkhaihao | Hiện thực các API về alerts và viết unit test, API doc kèm theo |
2212922 | Nguyễn Quang Sáng | Dev | Sangquangnqs, millerbright | Hiện thực các API về admin, auth, user, payment và viết unit test, API doc kèm theo |
Công nghệ | Mô tả |
---|---|
Golang | Ngôn ngữ phát triển hệ thống backend với hiệu năng cao, hỗ trợ tốt cho xây dựng hệ thống phân tán và microservices |
Gin | Framework của Go, giúp xây dựng các API RESTful nhẹ nhàng và nhanh chóng |
Swaggo | Tạo tài liệu cho API tự động và hỗ trợ tương tác giúp cho developer dễ dàng hiểu để sử dụng API |
Git, GitHub | Quản lý phiên bản code, hỗ trợ các chức năng cho cộng tác như pull request, issue tracking, CI/CD |
Docker, DockerHub, DockerCompose | Công cụ container hóa ứng dụng, xây dựng, lưu trữ các image, định nghĩa và khởi chạy đa container |
Mailjet | Dịch vụ hỗ trợ gửi email xác nhận, thông báo đến người dùng |
MongoDB | Cơ sở dữ liệu NoSQL linh hoạt cho việc lưu trữ thông tin người dùng, các trigger, lịch sử thanh toán,... |
MomoAPI | API của ví điện tử MOMO để tích hợp tính năng thanh toán để nâng cấp VIP vào hệ thống |
BinanceAPI, CoinGecko, CoinMarketCap | API hỗ trợ lấy dữ liệu thị trường giao dịch tiên ảo realtime |
Testify | Framework testing của Go hỗ trợ viết unit tests đơn giản và hiệu quả |
Sử dụng chung SRS với nhóm coin-price-web: link
Link SwaggerUI cho API doc (link)
Các demo chạy chức năng auth, admin, user, payment, demo trigger, demo coin_price
Cung cấp các chức năng chính cho người dùng về xác thực như: đăng ký, đăng nhập, đăng nhập bằng google, quên mật khẩu, đổi mật khẩu, đăng xuất, làm mới token. Chi tiết
Cung cấp các chức năng chính cho admin như: lấy danh sách người dùng, lấy thông tin người dùng, xóa người dùng, cấm người dùng, bỏ cấm người dùng, lấy lịch sử thanh toán của người dùng và của hệ thống. Chi tiết
Cung cấp các chức năng chính cho người dùng liên quan đến dữ liệu người dùng như: lấy thống tin người dùng, cập nhật thông tin người dùng, xóa tài khoản người dùng, đổi mật khẩu người dùng, đổi email người dùng, lấy lịch sử thanh toán, lấy danh sách các trigger của người dùng, gửi thông báo trigger đến email người dùng. Chi tiết
Cung cấp các chức năng chính cho người dùng lấy dữ liệu thị trường tiền ảo: lấy giá spot realtime, lấy giá future realtime, lấy funding rate realtime, lấy kline, lấy marketcap,... Chi tiết
Cung cấp các chức năng chính cho người dùng về thiết lập các trigger: tạo trigger, lấy trigger, xóa trigger, lấy danh sách new/delisted symbol, tạo trigger cho new/delisted symbol, khởi chạy trigger, dừng trigger, tạo trigger cho advanced indicators,... Chi tiết
Cung cấp các chức năng chính cho người dùng về thanh toán: khởi tạo thanh toán nâng cấp VIP qua Momo, gọi thanh toán qua Momo, kiểm tra trạng thái thanh toán qua Momo, xác nhận thanh toán và nâng cấp VIP qua Momo. Chi tiết
6.1. Cấu trúc nhánh main
.
├── /reports # Các meeing minutues và đánh giá hàng tuần của nhóm
├── /docs # Các mô tả chi tiết về các chức năng chính của hệ thống
├── /backend # Mã nguồn chính của dự án
└── README.md # File mô tả chính về hệ thống
6.2. Cấu trúc nhánh develop
.
├── /.github
│ └── /workflows
│ └── dev.yml # CI/CD cho nhánh develop
├── /backend # Mã nguồn chính của dự án
└── README.md # File mô tả phân công công việc
6.3. Cấu trúc nhánh production
.
├── /.github
│ └── /workflows
│ └── production.yml # CI/CD cho nhánh production
└── docker-compose.yml # File cấu hình docker-compose cho VPS khi chạy
Các issue
Các demo auth, admin, user, payment, demo trigger, demo coin_price