├── cmd/ # Các điểm chạy (Entry points) của ứng dụng
│ ├── searchsync/ # Script đồng bộ dữ liệu vào Elasticsearch
│ └── worker/ # Script khởi chạy Worker xử lý background jobs
├── commons/ # Các thành phần dùng chung (Shared layer)
│ ├── appError.go # Chuẩn hóa xử lý lỗi toàn hệ thống
│ ├── appSuccess.go # Chuẩn hóa phản hồi (Response) thành công
│ ├── errors/ # Định nghĩa các mã lỗi tùy chỉnh theo module
│ ├── models/ # Các struct model dùng chung
│ ├── pagination.go # Logic phân trang cho API
│ ├── queryBuilder.go # Bộ xây dựng câu lệnh truy vấn linh hoạt
│ └── uows/ # Pattern Unit of Work quản lý transaction
├── config/ # Quản lý cấu hình (Configuration)
│ ├── config.go # Load biến môi trường, cấu hình Viper
│ ├── database.go # Khởi tạo kết nối MySQL (Read/Write)
│ └── redis.go # Cấu hình Redis và Asynq
├── db/ # Lớp dữ liệu (Database layer)
│ ├── migrations/ # Các file schema SQL quản lý version DB
│ ├── models/ # Định nghĩa bảng (SQL schema) cho SQLC
│ ├── queries/ # Các câu lệnh SQL dùng để generate code Go
│ └── *.sql.go # Code Go được SQLC tự động tạo ra
├── internal/ # Logic xử lý nội bộ (Core backend logic)
│ ├── cron/ # Đăng ký và quản lý tất cả các lịch chạy Cron
│ └── worker/ # Cấu hình và chạy Asynq worker server
├── modules/ # Các module tính năng (Feature-based - Clean Arch)
│ ├── [feature_name]/ # Ví dụ: team, player, schedule...
│ │ ├── domain.go # Chứa các Model và Interface của module
│ │ ├── handler.go # Xử lý HTTP Request/Response (Fiber)
│ │ ├── usecase.go # Xử lý logic nghiệp vụ (Business logic)
│ │ ├── routes.go # Khai báo các endpoint API của module
│ │ └── rapidsync/ # Logic đồng bộ riêng từ RapidAPI cho module đó
├── pkg/ # Các gói thư viện bao gói (Wrappers)
│ ├── cloudinary/ # Tích hợp lưu trữ ảnh Cloudinary
│ ├── elasticsearch/ # Wrapper truy vấn Elasticsearch
│ ├── redis/ # Wrapper quản lý Redis client
│ └── external/rapidapi/ # Client gọi API hệ thống RapidAPI
├── server/ # Khởi tạo và vận hành Server
│ ├── index.go # Cấu hình Fiber app, Graceful shutdown
│ └── router.go # Đăng ký Route và Middleware toàn hệ thống
├── utils/ # Các hàm tiện ích bổ trợ (Helpers)
│ ├── convertTime.go # Xử lý chuyển đổi định dạng thời gian
│ ├── validate.go # Logic validation dữ liệu đầu vào
│ └── random.go # Tạo chuỗi hoặc số ngẫu nhiên
├── main.go # File chạy chính của toàn bộ hệ thống
└── sqlc.yaml # File cấu hình của SQLC tool