public/ alla radice della tua app contiene file statici — immagini, icone, font o qualsiasi altro asset di cui la tua app ha bisogno a runtime. Questi file sono inclusi automaticamente nelle build, sincronizzati durante la modalità di sviluppo e caricati sul server.
I file posizionati in public/ sono:
- Pubblicamente accessibili — una volta sincronizzati sul server, gli asset sono serviti a un URL pubblico. Non è necessaria alcuna autenticazione per accedervi.
- Disponibili nei componenti front-end — usa gli URL degli asset per visualizzare immagini, icone o qualsiasi media all’interno dei tuoi componenti React.
- Disponibili nelle funzioni logiche — fai riferimento agli URL degli asset nelle email, nelle risposte API o in qualsiasi logica lato server.
- Usati per i metadati del marketplace — i campi
logoUrlescreenshotsindefineApplication()fanno riferimento a file di questa cartella (ad es.,public/logo.png). Questi vengono visualizzati nel marketplace quando la tua app viene pubblicata. - Sincronizzati automaticamente in modalità dev — quando aggiungi, aggiorni o elimini un file in
public/, viene sincronizzato automaticamente con il server. Nessun riavvio necessario. - Inclusi nelle build —
yarn twenty dev:buildraggruppa tutti gli asset pubblici nell’output di distribuzione.
Accedere agli asset pubblici con getPublicAssetUrl
Usa l’helper getPublicAssetUrl da twenty-sdk per ottenere l’URL completo di un file nella tua directory public/. Funziona sia nelle funzioni logiche che nei componenti front-end.
In una funzione logica:
src/logic-functions/send-invoice.ts
src/front-components/company-card.tsx
path è relativo alla cartella public/ della tua app. Sia getPublicAssetUrl('logo.png') sia getPublicAssetUrl('public/logo.png') risolvono allo stesso URL — il prefisso public/ viene rimosso automaticamente se presente.