initial commit
This commit is contained in:
33
.agent/rules/development-folders.md
Normal file
33
.agent/rules/development-folders.md
Normal file
@@ -0,0 +1,33 @@
|
||||
---
|
||||
trigger: always_on
|
||||
---
|
||||
|
||||
usa ./docs/development/devlog per tenere traccia di tutti i piani di lavoro e il loro attuale stato singolarmente, crea qui dentro i log delle lavorazioni ed il lavoro fatto, da fare e suggerito per ogni piano di sviluppo, usa il formato "yyyy-mm-dd-hh24miss_descrizione_brevissima".
|
||||
|
||||
usa ./docs/development per tenere un file DEVELOPMENT.md riassuntivo con link ai file specifici dentro ./docs/development/devlog e una breve sintesi specificando che tipo di sviluppo si è concluso o si sta lavorando.
|
||||
|
||||
usa ./src/backend per tutto quello che riguarda il backend in Node.js
|
||||
|
||||
usa ./src/frontend per tutto quello che riguarda il frontend in react
|
||||
|
||||
## Struttura Modulare del Progetto
|
||||
|
||||
Il progetto segue una rigorosa struttura modulare sia per il backend che per il frontend. Ogni nuova funzionalità o dominio di business deve essere incapsulato nel proprio modulo.
|
||||
|
||||
### Backend (Node.js)
|
||||
- **Moduli**: `src/backend/src/modules/[nome-modulo]/`
|
||||
- **Controllers**: `src/backend/src/modules/[nome-modulo]/controllers/`
|
||||
- I file devono essere nominati `[nome].controller.ts`.
|
||||
- Le rotte devono essere definite in `[nome-modulo].routes.ts` e seguire il pattern `api/[nome-modulo]/[risorsa]`.
|
||||
- **Entities/Models**: `src/backend/src/modules/[nome-modulo]/entities/`
|
||||
- Le entità devono essere definite usando l'ORM scelto (es. TypeORM/Prisma) e risiedere in questa cartella.
|
||||
- **Services**: `src/backend/src/modules/[nome-modulo]/services/`
|
||||
- La logica di business deve risiedere nei service, separata dai controller.
|
||||
|
||||
### Frontend (React)
|
||||
- **Moduli**: `src/frontend/src/modules/[nome-modulo]/`
|
||||
- **Pagine**: `src/frontend/src/modules/[nome-modulo]/pages/`
|
||||
- **Componenti**: `src/frontend/src/modules/[nome-modulo]/components/`
|
||||
- **Rotte**: `src/frontend/src/modules/[nome-modulo]/routes.tsx`
|
||||
- Il file `routes.tsx` deve esportare un componente che definisce le rotte figlie del modulo.
|
||||
- Le rotte devono essere importate e registrate nel router principale (es. `App.tsx`).
|
||||
Reference in New Issue
Block a user