Implementa internal/db (db.go, migrate.go, seed.go) con GORM. - db.go: Open(cfg) (*gorm.DB, error) con switch sqlite/postgres. - sqlite usa cfg.SQLitePath, crea directory se serve. - postgres usa cfg.PostgresDSN. - logger più verboso in develop. - migrate.go: Migrate(db) che fa AutoMigrate su tutti i modelli (User, EmailVerificationToken, PasswordResetToken). - esegui solo se cfg.AutoMigrate=true (gestisci in app.go o in migrate.go). - seed.go: Seed(db) idempotente se cfg.SeedEnabled=true: - in develop crea: - admin@example.com (role=admin, verified=true, password="password") - user@example.com (role=user, verified=true, password="password") - crea anche utenti demo aggiuntivi per tabella. - usa upsert by email (GORM clauses OnConflict dove possibile). - NON loggare password in chiaro. Aggiorna/crea internal/models con i modelli necessari.