# Technology Stack ## Core Development * **Primary Language:** Go 1.23 (with Go 1.24.11 toolchain support) * **Web Framework:** [Gin Gonic](https://github.com/gin-gonic/gin) - Used for high-performance HTTP routing and middleware. * **Websockets:** [Gorilla Websocket](https://github.com/gorilla/websocket) - For real-time communication relay. ## Data & Storage * **Database:** PostgreSQL - Accessed via the [pgx/v5](https://github.com/jackc/pgx) driver for efficient, native PostgreSQL support. * **Object Storage:** [MinIO Go SDK](https://github.com/minio/minio-go) - For interacting with S3-compatible storage. ## Infrastructure & Deployment * **Containerization:** Docker - Primary deployment method, with specific optimizations for Hugging Face Spaces. * **Deployment Platforms:** Hugging Face Spaces, Puter OS. * **CI/CD:** GitHub Actions (defined in `.github/workflows/`) for Docker image building and releases. ## Utilities & Libraries * **Configuration:** YAML (via `gopkg.in/yaml.v3`) and environment variables (via `joho/godotenv`). * **Logging:** [Logrus](https://github.com/sirupsen/logrus) for structured logging, with [Lumberjack](https://github.com/natefinch/lumberjack) for log rotation. * **File Watching:** [fsnotify](https://github.com/fsnotify/fsnotify) - Used for real-time configuration or state monitoring. * **Git Integration:** [go-git](https://github.com/go-git/go-git) - For programmatic Git operations. * **Tokenization:** [tiktoken-go](https://github.com/tiktoken-go/tokenizer) - For accurate token counting across different model families.