A RESTful API service built with Go (Golang) that manages and serves quotes with user interaction capabilities.
- Language: Go (Golang)
- Framework: Echo
- Database: MongoDB
- Authentication: JWT
- Environment: dotenv
- Logging: Logrus
- JWT-based authentication system
- Device-based user registration and login
- Role-based access control (Admin/User)
- Get random quotes
- Filter quotes by categories
- Like/Unlike quotes
- Fetch quotes by ID
- Admin quote creation
- Category-based quote organization
- Multi-language support
- Custom category styling (background colors, gradients)
- Category-specific image sources
- User profile management
- Like/Unlike quotes
- View liked quotes history
- Pagination support for liked quotes
- Version checking system
- Minimum version enforcement
- Optional and forced update notifications
- Platform-specific versioning (iOS/Android)
- Multi-language support (Extensible)
- Request/Response logging
- Comprehensive error handling
- MongoDB aggregation queries
- Statistics and analytics
├── config/
│ ├── helper.go # Environment and configuration helpers
├── database/
│ ├── mongo.go # MongoDB connection and operations
├── handlers/
│ ├── auth.go # Authentication handlers
│ ├── quote.go # Quote handlers
│ ├── user.go # User handlers
├── main.go # Main application file