Add comprehensive i18n localization support
- Add go-i18n package for internationalization - Create i18n middleware to extract Accept-Language header - Add translation files for en, es, fr, de, pt languages - Localize all handler error messages and responses - Add language context to all API handlers Supported languages: English, Spanish, French, German, Portuguese 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -14,6 +14,7 @@ import (
|
||||
|
||||
"github.com/treytartt/casera-api/internal/config"
|
||||
"github.com/treytartt/casera-api/internal/database"
|
||||
"github.com/treytartt/casera-api/internal/i18n"
|
||||
"github.com/treytartt/casera-api/internal/push"
|
||||
"github.com/treytartt/casera-api/internal/router"
|
||||
"github.com/treytartt/casera-api/internal/services"
|
||||
@@ -31,6 +32,13 @@ func main() {
|
||||
// Initialize logger
|
||||
utils.InitLogger(cfg.Server.Debug)
|
||||
|
||||
// Initialize i18n
|
||||
if err := i18n.Init(); err != nil {
|
||||
log.Warn().Err(err).Msg("Failed to initialize i18n - using English only")
|
||||
} else {
|
||||
log.Info().Strs("languages", i18n.SupportedLanguages).Msg("i18n initialized")
|
||||
}
|
||||
|
||||
log.Info().
|
||||
Bool("debug", cfg.Server.Debug).
|
||||
Int("port", cfg.Server.Port).
|
||||
|
||||
Reference in New Issue
Block a user