Go to file
fabio 722dd85fc6 prompt-5 2026-02-22 17:43:04 +01:00
cmd prompt 1,2,3 2026-02-22 17:36:16 +01:00
codex-prompt prompt-5 2026-02-22 17:43:04 +01:00
data prompt-0 2026-02-22 17:26:56 +01:00
internal prompt-5 2026-02-22 17:43:04 +01:00
ui-kit prompt-0 2026-02-22 17:26:56 +01:00
web prompt-5 2026-02-22 17:43:04 +01:00
.env.example prompt 4 2026-02-22 17:39:36 +01:00
.gitignore prompt 4 2026-02-22 17:39:36 +01:00
README.md prompt 4 2026-02-22 17:39:36 +01:00
go.mod prompt 1,2,3 2026-02-22 17:36:16 +01:00
go.sum prompt 1,2,3 2026-02-22 17:36:16 +01:00

README.md

GoFiber MVC Boilerplate

Boilerplate riusabile per:

  • GoFiber (MVC)
  • HTMX
  • Svelte Custom Elements (UI kit)
  • GORM
  • SQLite/Postgres
  • Auth + ruolo admin
  • Email sink
  • CORS
  • Template directory public / private / admin

In ambiente develop, le email vengono salvate in ./data/emails (sink locale).

Struttura iniziale

.
├── cmd/
│   └── server/
├── internal/
│   ├── app/
│   ├── auth/
│   ├── config/
│   ├── controllers/
│   ├── db/
│   ├── http/
│   ├── mailer/
│   ├── middleware/
│   ├── models/
│   ├── repo/
│   └── services/
├── web/
│   ├── emails/
│   │   └── templates/
│   ├── static/
│   │   ├── css/
│   │   ├── ui/
│   │   └── vendor/
│   └── templates/
│       ├── admin/
│       ├── private/
│       └── public/
├── ui-kit/
└── data/        # solo sviluppo locale

TODO Checklist

  • Definire bootstrap server in cmd/server (entrypoint + lifecycle).
  • Configurare loader config (env, flags) in internal/config.
  • Impostare internal/db con supporto SQLite (dev) e Postgres (prod).
  • Definire modelli base GORM in internal/models (User, Role, Session, ecc.).
  • Implementare repository layer in internal/repo.
  • Implementare service layer in internal/services.
  • Implementare controller layer in internal/controllers.
  • Configurare router HTTP in internal/http (gruppi public/private/admin).
  • Aggiungere middleware comuni in internal/middleware (logging, recovery, auth, cors).
  • Implementare auth in internal/auth (login/logout/session o token).
  • Implementare RBAC con ruolo admin.
  • Configurare mailer + email sink in internal/mailer.
  • Definire template rendering per web/templates/public, web/templates/private, web/templates/admin.
  • Preparare template email in web/emails/templates.
  • Definire static assets pipeline e convenzioni in web/static.
  • Impostare ui-kit con Svelte Custom Elements e output in web/static/ui.
  • Definire integrazione HTMX lato template/partials.
  • Aggiungere migrazioni DB iniziali e seed minimo.
  • Aggiungere test base (unit + integrazione) per router/auth/repo.
  • Aggiungere script Makefile/task runner per setup e run locale.