After building the Job App with Go, Gorilla Mux, and PostgreSQL, I wanted to test myself with a different stack combination to broaden my backend expertise. E-commerce applications require robust infrastructure that balances security, performance, and maintainability—making them the perfect domain to test alternative technology choices.
This project represents my deliberate exploration of Go's ecosystem diversity. Instead of using Gorilla Mux (from Job App), I chose Gin for its lightweight framework and routing performance. Instead of PostgreSQL with GORM, I embraced MongoDB's document model using the official MongoDB driver with BSON serialization. This comparison taught me that stack selection isn't about 'better'—it's about matching database paradigms to data patterns.
Every component was chosen to contrast with my previous work: Gin's minimal overhead vs Gorilla Mux's explicit routing, MongoDB's schema flexibility vs PostgreSQL's rigid schemas, Docker Compose for database containerization as a repeatable pattern from Job App. The goal wasn't just building an e-commerce API—it was systematically understanding trade-offs in the Go backend ecosystem.

