- Replace deprecated `golang.org/x/crypto/ssh/terminal` with `golang.org/x/term`
- Update `terminal.ReadPassword()` calls to use `term.ReadPassword()`
- Remove unnecessary version of `golang.org/x/sys` in go.sum
- Ensure compatibility with latest terminal package recommendations
- Add new `internal/cli/admin.go` package for admin management
- Implement interactive admin account creation with secure password input
- Add CLI command for creating admin accounts with flexible input options
- Implement validation for admin account creation details
- Support both interactive and flag-based admin account creation
- Integrate with existing user and authentication services
- Update go.mod and go.sum with new dependencies and version upgrades
Enhances system administration capabilities by providing a flexible CLI tool for creating admin accounts with robust security and usability features.
- Add full implementation for booking handlers with complete CRUD operations
- Implement GetAvailableSlots endpoint to retrieve available booking time slots
- Add CreateBooking handler with robust error handling and validation
- Implement GetUserBookings endpoint to fetch user's booking history
- Add CancelBooking handler with specific error scenarios and authorization checks
- Integrate booking service and middleware for authentication and request processing
- Add support for date parsing and slot availability checking
- Enhance error responses with detailed error messages and appropriate HTTP status codes
- Integrate with existing authentication and middleware components
- Add JWT authentication middleware with token validation
- Implement user context extraction methods for user ID, email, and admin status
- Create admin middleware to restrict access to admin-only routes
- Add convenience method to combine authentication and admin authorization
- Update auth middleware to handle token parsing, validation, and context setting
- Enhance error handling for various authentication scenarios
- Add new JWT service and related dependencies in go.mod
- Add initial project scaffolding with Go module and project structure
- Create server and CLI entry points for application
- Implement Makefile with development and build commands
- Add `.env.example` with comprehensive configuration template
- Set up README.md with project documentation and setup instructions
- Configure basic dependencies for server, database, and CLI tools
- Establish internal package structure for models, services, and handlers
- Add initial configuration and environment management
- Prepare for HTTP server, CLI, and database integration