diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index bd0bd22..d4f4f90 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -27,3 +27,5 @@ Ci sono vari modi per lanciare la nostra applicazione in base all'_environment_, - L'ultimo _entrypoint_ è [./cmd/build/main.go](./cmd/build/main.go) e lancia la nostra applicazione in una modalità "finta" senza server http ma vengono comunque registrate tutte le route utilizzando sempre il modulo `dev`. Questo ci permette di costruire l'albero delle route (statiche e dinamiche) che poi servirà a Vite quando faremo `npm run build`. Ciò serve perché così ci basta definire tutte le route una volta sola nel Go e poi in automatico funzioneranno anche nel server di Vite senza dover ripetere due volte il codice. (questa è la parte più magica di _meta-programming_ di tutto il progetto) + +![architecture-1](./docs/architecture-1.svg) diff --git a/docs/architecture-1.svg b/docs/architecture-1.svg new file mode 100644 index 0000000..400eae1 --- /dev/null +++ b/docs/architecture-1.svg @@ -0,0 +1,78 @@ + + + + + + + + + + buildbuild/ +/articles +/articles/:slug +/profile +/u/:user +/appunti +/appunti/dispensa/:id +/appunti/nuova-dispensa +/admin +.../ +/articles +/articles/:slug +/profile +/u/:user +/appunti +/appunti/dispensa/:id +/appunti/nuova-dispensa +/admin +...Routes (dal codice in Go)Routes (dal codice in Go)/pages +index.html +profile.html +user.html +articles/ +index.html +article.html +appunti/ +index.html +dispensa.html +nuova-dispensa.html +admin/ +index.html +.../pages +index.html +profile.html +user.html +articles/ +index.html +article.html +appunti/ +index.html +dispensa.html +nuova-dispensa.html +admin/ +index.html +...HTML PagesHTML Pagesout/routes.jsonout/routes.jsonout/frontend/...out/frontend/... \ No newline at end of file