Che Cos’è Rork?
Rork AI è un builder basato su chat che converte descrizioni in testo semplice in app iOS, Android e web funzionanti con vero codice nativo, non in un’anteprima drag-and-drop. Scrivi ciò che vuoi, scegli una piattaforma (iPhone tramite SwiftUI, Android tramite Kotlin + Compose, web tramite Vite + React, oppure cross-platform tramite Expo), e Rork genera il codice sottostante, gestisce il provisioning del backend attraverso la propria infrastruttura cloud e fornisce un’anteprima live in pochi minuti.
Ciò che lo distingue dai normali builder no-code è l’output: vero SwiftUI per iOS, vero Kotlin per Android, non un wrapper generico o una web view mascherata da app mobile.
Inoltre esegue automaticamente il provisioning di un backend ospitato (Postgres più Cloudflare Workers) senza richiederti di toccare un server.
Per Chi è Rork?
- Fondatori indie che vogliono una vera app mobile, non un prototipo. Rork produce vero codice Swift e Kotlin che può arrivare su App Store o Google Play, non un’anteprima di cui ti vergogneresti a mostrare a un vero utente.
- Team aziendali che sostituiscono gli abbonamenti SaaS con strumenti interni. L’onboarding si rivolge esplicitamente a team di marketing, vendite, operations e HR che vogliono app personalizzate senza pagare prezzi SaaS B2B.
- Sviluppatori che vogliono andare più veloci nei side project. La dev mode sui piani a pagamento ti dà accesso completo al codice, così puoi prendere in mano il progetto dove si è fermata l’AI e portarlo a termine alle tue condizioni.
- Utenti di Lovable o Bolt che hanno bisogno anche del mobile. Rork ha un pulsante “Lovable to Mobile App” sulla propria homepage, posizionandosi come l’upgrade naturale quando ti serve iOS nativo insieme alla tua web app.
Pro e Contro di Rork
- Crea vere app native iOS con SwiftUI
- Backend provisionato automaticamente in meno di un minuto
- Web e mobile possono vivere nello stesso progetto
- Icone app generate automaticamente durante la build
- Integrazioni AI integrate con più provider di modelli
- La pubblicazione con un clic fornisce un URL live e condivisibile
- Lo stato di avanzamento della build è mostrato passo dopo passo in tempo reale
- iOS nativo bloccato dietro il piano da $200/mo
- L’editor del codice è in sola lettura nel piano gratuito
- Il rilevamento del proprio progetto Supabase può fallire alla configurazione iniziale
Ripartizione del Punteggio
Ecco come Rork si comporta nelle aree che contano di più quando si valuta un AI app builder. Questi punteggi riflettono una build reale e complessa, non una semplice lista di cose da fare o un prompt demo.
| Funzionalità | Punteggio (Su 10) | Perché questo punteggio |
|---|---|---|
| Facilità d’Uso | 8/10 | Onboarding in due passaggi e interfaccia di build pulita, ma il sistema di crediti e i livelli dei piani richiedono un po’ di lettura prima di iniziare. |
| Funzionalità & Caratteristiche | 9/10 | Output nativo multi-piattaforma, backend auto-provisionato, integrazioni AI integrate, collaborazione in tempo reale e analytics sono tutti inclusi. |
| Design & Personalizzazione | 7/10 | La qualità dell’output è alta, ma apportare modifiche richiede prompt in chat o un editor del codice a pagamento; non esiste un livello visivo drag-and-drop. |
| Rapporto Qualità-Prezzo | 7/10 | Il piano gratuito basta per testare; Max a $200/mo è un investimento serio ma giustificato se hai bisogno di iOS nativo. |
| Prestazioni & Affidabilità | 8/10 | Ha costruito una SaaS completa per la gestione immobiliare in 20 minuti; un problema di rilevamento di Supabase è stato l’unico intoppo. |
| Totale | 8/10 | Uno strumento serio che mantiene la sua promessa principale. |
Funzionalità di Rork AI
- App native iOS realizzate con SwiftUI
- App Android realizzate con Kotlin + Compose
- Provisioning automatico del backend tramite Rork Cloud
- Integrazione RevenueCat per acquisti in-app e abbonamenti
- AI integrata per generazione di immagini, analisi delle immagini e generazione di testo
- Sincronizzazione bidirezionale con GitHub sui piani a pagamento
- Inviti collaboratori in tempo reale via email o link condivisibile
La Mia Recensione Onesta di Rork AI: Cosa Ho Trovato Dopo Averlo Testato
Ecco come si comporta Rork quando lo metti alla prova con un brief reale e complicato, invece che con un esempio giocattolo.
L’ho testato costruendo una piattaforma SaaS completa per la gestione immobiliare, partendo dal prompt della homepage e seguendo l’intero percorso fino a un URL pubblicato e live.
Questo tipo di progetto di solito mette in evidenza molto rapidamente i punti deboli degli AI app builder perché richiede flussi di lavoro reali, relazioni complesse, pagamenti, archiviazione file e permessi utente.
Il Punto di Ingresso è il Prompt, Non un Pulsante di Registrazione
La maggior parte dei builder ti chiede di creare un account prima di mostrarti qualcosa di utile. Rork fa diversamente: la homepage è un’interfaccia chat e la prima cosa che fai è descrivere la tua app. Inizi a costruire prima ancora di aver preso un impegno.

Il selettore della piattaforma si trova sotto la casella del prompt. Facendoci clic sopra compaiono quattro opzioni:
| Piattaforma | Stack Tecnologico |
|---|---|
| Per iPhone | iPad, Apple Watch e altro con SwiftUI |
| Per Android | Android nativo con Kotlin + Compose |
| Per il web | Vite + React |
| Expo | Cross-platform con React Native |
Ci sono anche pulsanti di avvio rapido per tipi di build comuni: Create a Multiplayer Game, Create a 3D Game, Lovable to Mobile App e GitHub to Mobile App. Questi ti danno un’idea immediata della gamma coperta da Rork, dagli strumenti SaaS ai giochi nativi.

Ho scritto un prompt dettagliato per una piattaforma di gestione immobiliare, ho selezionato “For iPhone” e ho premuto invia.

A quel punto è apparso il modal di registrazione. Il flusso è deliberato: scrivi il prompt, sei già coinvolto nel risultato, e poi Rork ti chiede le credenziali. È un ingresso più intelligente rispetto a chiedere tutto subito.
La Registrazione e l’Onboarding Richiedono Meno di Due Minuti
Quando è apparso il modal di accesso, avevo esattamente due opzioni:
- Continua con Google
- Continua con Apple

Niente email e password. È una scelta deliberata che rende il processo veloce ed elimina un punto di attrito. Per la stragrande maggioranza degli utenti non farà differenza. Dopo l’accesso, Rork esegue due brevi schermate di onboarding:
Passaggio 1: Cosa ti descrive meglio?
| Opzione | Cosa Significa |
|---|---|
| Costruire la mia app o startup | Trasformare un’idea in una vera app che posso lanciare e monetizzare. |
| Costruire app per la mia azienda | Strumenti interni personalizzati per il mio team, riducendo i costi SaaS B2B. |
| Provare Rork per il mio team di sviluppo | Abbiamo già sviluppatori e vogliamo spedire più velocemente insieme. |
Selezionando “Costruire app per la mia azienda” viene mostrato anche un pannello che spiega che team di marketing, vendite, operations, legale, finanza e HR stanno usando Rork per creare app aziendali personalizzate e ridurre di centinaia di migliaia di dollari la spesa SaaS.

Passaggio 2: Come hai scoperto Rork?
Questa schermata elenca i canali di attribuzione: Amici o familiari, Instagram, ChatGPT o altra AI, Reddit, Google Search, TikTok, App Store, LinkedIn, YouTube, X e Altro. Non influisce in alcun modo sulla tua esperienza.

Dopo aver cliccato su “Get started”, entri nell’area di lavoro della build.
L’intero processo di registrazione e onboarding mi ha richiesto meno di due minuti, senza email di conferma, senza tutorial obbligatorio e senza passaggi di configurazione prima che la build inizi.
La Build Parte Istantaneamente e Ogni Passaggio è Visibile
Una volta dentro l’area di lavoro, Rork inizia a costruire immediatamente. Il layout è diviso in due pannelli:
- Sinistra: il pannello chat che mostra cosa sta facendo Rork, con il tuo prompt in alto e un registro attività live sotto
- Destra: un riquadro di anteprima a forma di telefono che inizia con “Your app preview will appear here” e si aggiorna mentre la build avanza

Ciò che mi ha colpito è stato il livello di trasparenza. Rork non mostra solo una rotellina di caricamento. Ti dice esattamente cosa sta facendo in ogni fase. La mia build ha mostrato questa sequenza in tempo reale:
Fase iniziale:
- Ha pensato per 8 seconds
- Ha appreso la skill platforms
- Ha appreso la skill backend
- Ha appreso la skill auth
- Ha appreso la skill app-config
Poi ha suddiviso il lavoro in una lista di nove passaggi:
| Passaggio | Attività |
|---|---|
| 1 | Leggere i file dell’app web esistente e i riferimenti alle skill. |
| 2 | Configurare Rork Auth (getOrCreateAuthConfig, auth hook, vite config). |
| 3 | Provisionare il backend Supabase e creare lo schema del database. |
| 4 | Provisionare Cloudflare Functions per il livello API. |
| 5 | Generare l’icona dell’app. |
| 6 | Creare il frontend principale, inclusi layout, routing e flussi di autenticazione. |
| 7 | Creare funzionalità per la gestione immobiliare, incluse inserzioni, contratti di locazione, manutenzione e pagamenti. |
| 8 | Creare la dashboard admin, la messaggistica e le notifiche. |
| 9 | Validare l’applicazione con runChecks. |
Ogni passaggio veniva spuntato visivamente quando completato.

Il contatore dei crediti in alto a destra si aggiorna man mano che la build consuma risorse. La build ha usato Rork Max (indicato con un badge nella sidebar), perché gli utenti del piano gratuito ottengono cinque usi di prova di Rork Max a settimana. È questo che ha alimentato la complessità di ciò che è stato costruito.
La Scelta del Backend Che Mi Ha Fatto Risparmiare Cinque Minuti
A metà build, Rork si è fermato e mi ha chiesto come gestire il database. Le due opzioni erano:
| Opzione | Cosa Fa |
|---|---|
| Connect my Supabase | Collega un progetto Supabase esistente della tua organizzazione e addebita il compute direttamente a Supabase. |
| Create Rork Cloud | Provisiona un backend ospitato gestito da Rork, pronto in meno di un minuto. |
Avevo pronto un progetto Supabase e ho provato prima a collegarlo. Il menu a tendina mostrava il nome del mio account, ma il progetto vero e proprio non compariva.

Ho aspettato, provato ad aggiornare e riprovato. Niente compariva. Dopo circa cinque minuti di troubleshooting, sono passato a “Create Rork Cloud”.

Cosa provisiona automaticamente Rork Cloud:
- Postgres con row-level security (RLS) completa
- Cloudflare Functions per il livello API
- Edge functions
- Tipi TypeScript generati automaticamente dallo schema del database
- Variabili d’ambiente preconfigurate nell’app
La conferma “Rork Cloud ready” è arrivata in meno di un minuto. Il messaggio di stato confermava: “The backend is connected. Database types and app environment variables are set.” La build è ripresa immediatamente.

Dopo la build completa, il display dei crediti mostrava $1.00 di $1.00 di crediti cloud utilizzati. Questo viene fatturato separatamente dai crediti dei messaggi AI, ed è utile saperlo prima di iniziare, soprattutto nel piano gratuito.
Ho Selezionato iPhone ma Rork Ha Costruito una Web App (Ecco Perché è Importante Saperlo)
Questo è l’unico aspetto della build che mi ha colto di sorpresa. Avevo selezionato “For iPhone” sulla homepage prima di inviare il prompt. Nell’area di lavoro, Rork ha valutato il brief e ha preso una decisione architetturale diversa:
“Questo è un progetto sostanzioso, una piattaforma SaaS completa per la gestione immobiliare. Lasciami impostare prima le fondamenta, poi costruirò le funzionalità principali con un’implementazione rifinita e pronta per la produzione. Creerò una web app chiamata RentFlow con:
- Frontend: Vite + React + Tailwind + shadcn/ui (dashboard responsive e moderna)
- Backend: Cloudflare Workers per l’API + Supabase Postgres per i dati relazionali
- Auth: Rork Auth (Google sign-in)”
Non un’app iOS. Una web app.

Ci sono due spiegazioni probabili. Prima: il piano gratuito supporta solo il web nelle build standard, e anche con un credito di prova Rork Max, l’ampiezza del mio prompt potrebbe aver portato lo strumento a trattarlo come un’architettura web-first.
Seconda: il workflow di Rork è progettato per costruire prima il web e aggiungere poi le piattaforme mobili, ed è quello che ho fatto: una volta che la web app era live, ho inviato un prompt di follow-up chiedendo a Rork di aggiungere una versione iOS (Swift) e di farla corrispondere al design esistente. Il pulsante “add preview platform” nella toolbar esiste proprio per questo tipo di flusso.

La logica di build multi-piattaforma in Rork funziona a livelli:
| Livello | Piano Richiesto |
|---|---|
| App web | Piano gratuito |
| Android (Kotlin + Compose) o Expo (React Native) | Rork Pro |
| iOS nativo (SwiftUI), iPad, Apple Watch, Vision Pro | Rork Max |
Quindi la decisione di costruire prima il web non è stato un fallimento. È stato un ordine di build sensato applicato a un brief grande. Il problema è che Rork ha preso la decisione senza chiedermelo prima.
Venti Minuti Dopo, una SaaS di Qualità di Produzione
La build è iniziata alle 1:19 pm. L’anteprima è apparsa alle 1:39 pm. Quello che Rork ha prodotto in quei venti minuti non era uno scheletro:
Schermate frontend create:
| Schermata | Funzionalità Incluse |
|---|---|
| Dashboard | Statistiche proprietà, tassi di occupazione, riepilogo ricavi, attività recenti |
| Properties | Card degli immobili, stato di occupazione, numero di unità |
| Leases | Contratti attivi, date di scadenza, dettagli degli inquilini |
| Payments | Card di riepilogo (incassato, in sospeso, tasso), elenco transazioni con stati, pulsante di esportazione |
| Maintenance | Ripartizione delle priorità (emergenza/alta/media/bassa), elenco richieste con azioni di assegnazione, conteggio foto |
| Messages | Chat a pannello diviso con elenco contatti, indicatori online, conteggi non letti, vista conversazione a thread |
| Admin | Grafico a linee dei ricavi, grafico a barre dell’occupazione, metriche della piattaforma, card KPI |

Infrastruttura backend creata:
- Supabase Postgres con sei tabelle: profiles, properties, leases, payments, maintenance_requests, messages
- Row-level security completa applicata a tutte le tabelle
- Cloudflare Worker REST API con endpoint per /api/health, /api/stats, /api/payments/checkout e /api/webhooks/stripe
- Tipi TypeScript generati automaticamente dallo schema del database

Design:
L’output visivo era uno sfondo navy scuro con accenti caldi ambra e oro, card glassmorphism con effetti glow, scrollbar personalizzate e un tema scuro coerente in tutto il progetto. La landing page recitava “Manage properties, effortlessly.” con pulsanti di accesso Google e Apple funzionanti e vere card di statistiche di anteprima nell’hero section (Sunset Apartments all’85% di occupazione, $24,500 di affitti riscossi quel mese, due richieste di manutenzione aperte).
Durante la build è stata generata automaticamente anche un’icona dell’app: un edificio con una chiave dorata, tematicamente appropriata e abbastanza rifinita da poter essere pubblicata.
Rork ha inoltre prodotto un riepilogo chiaro di ciò che non aveva ancora costruito ma che aveva predisposto per:
- Stripe Connect per la riscossione reale degli affitti (l’endpoint API è già presente)
- Caricamento documenti per contratti di locazione e foto di manutenzione
- Notifiche in tempo reale tramite sottoscrizioni Supabase Realtime
- Avvisi email per scadenze dei contratti e promemoria di pagamento
- Vista tenant portal con accesso basato sui ruoli
Quel livello di trasparenza sullo scope, mostrando esattamente cosa è stato fatto e cosa resta da fare, è davvero utile quando devi decidere quale prompt inviare dopo.
Modificare ed Espandere la Build Dopo il Completamento
Una volta terminata la build, avevo due modi per apportare modifiche:
| Metodo | Disponibile Su | Come Funziona |
|---|---|---|
| Prompt in chat | Tutti i piani, incluso il gratuito | Descrivi la modifica in linguaggio naturale; Rork la implementa in un nuovo passaggio di build, consumando un credito. |
| Editor del codice | Solo piani a pagamento | Accesso completo ai file sorgente tramite la toolbar; appare in sola lettura nel piano gratuito. |
Ho testato la modifica via chat chiedendo a Rork di aggiungere un pulsante per la modalità chiara e scura. Ha accettato la richiesta immediatamente e ha messo in coda la modifica.

Ogni modifica basata su chat costa un credito, quindi il limite giornaliero del piano gratuito è il tetto pratico di quanta iterazione puoi fare in una sessione.

L’editor del codice mostrava la struttura completa dei file: backend/types.ts, una cartella functions, una cartella web, .gitignore e rork.json. Il TypeScript era pulito e leggibile. Il banner in alto diceva “Read Only. To use the code editor, upgrade to a paid plan.”
Il pulsante “+” nella chat apre un menu di integrazioni che vale la pena notare:
Pagamenti:
- RevenueCat (acquisti in-app e abbonamenti su iOS e Android)
Dispositivo:
- Camera
- Image Picker
- Image Manipulator
- Audio
- Video
- Video Thumbnails
- Media Library

Integrazioni AI (integrate direttamente nelle funzionalità della tua app):
| Funzionalità | Modelli Disponibili |
|---|---|
| Analizza Immagine | Claude Sonnet 4.6, GPT-5.2, Gemini 3 Flash |
| Genera Immagine | GPT-Image 2, Gemini 3 Pro |
| Genera Testo | Claude Sonnet 4.6, Opus 4.8, GPT-5.3 Codex, Gemini 3 Flash |
Le integrazioni AI sono una delle parti più interessanti di Rork. Non sei limitato a un solo modello; puoi inserire Claude, GPT o Gemini direttamente nel set di funzionalità della tua app senza alcuna configurazione manuale dell’API.

Questa è una differenziazione pratica rispetto ai builder che ti vincolano a un singolo modello sottostante.
Il pannello “More” nella toolbar mostra anche:
- Analytics: tracciamento delle attività con viste giornaliere, settimanali e mensili
- Gestione dei secrets
- Strumenti Rork Cloud: AI Cloud, database viewer, attività pianificate

Pubblicazione, Collaborazione e Dove Finisce il Piano Gratuito
La pubblicazione su un URL live ha richiesto un clic. Il pulsante Publish apre un pannello che mostra un URL preassegnato nel formato [project-name]-[random-id].rork.app e un singolo pulsante “Publish to web”. L’app è andata live immediatamente dopo il clic.

Un dettaglio da sapere in anticipo: i siti pubblicati nel piano gratuito mostrano un badge Rork visibile. Il pannello di pubblicazione lo confermava chiaramente: “Published sites include a small Rork badge.
Visitors can close it for their session, and paid plans can turn it off.” Non è un overlay a schermo intero, ma è abbastanza visibile da essere un problema in una demo per un cliente o in un vero test utente.
La collaborazione è disponibile tramite l’icona delle persone nella toolbar:
- Invita un collaboratore via email con ruolo Editor
- Genera un link di invito condivisibile per permettere a chiunque di entrare direttamente
La sincronizzazione bidirezionale con GitHub appare nelle impostazioni del progetto con un pulsante “Connect”. L’attivazione richiede un piano a pagamento.
Ecco un riepilogo di ciò che include il piano gratuito e dove si ferma:
| Funzionalità | Piano Gratuito | Piani a Pagamento |
|---|---|---|
| Build di app web | Sì | Sì |
| Build native iOS | Solo prova (5 utilizzi a settimana) | Solo piano Max |
| Build native Android | No | Pro e Max |
| Editor del codice | Sola lettura | Accesso completo |
| Progetti privati | No (solo pubblici) | Sì |
| Badge Rork sui siti pubblicati | Non può essere rimosso | Può essere rimosso |
| Sincronizzazione GitHub | Non disponibile | Disponibile |
| Limite giornaliero di crediti | 5 al giorno | Nessun limite giornaliero |
Prezzi e Piani di Rork
Esiste un piano gratuito e non è richiesta una carta di credito per iniziare. Il piano gratuito offre build di app web, progetti pubblici e un limite giornaliero di crediti. È sufficiente per testare lo strumento in modo serio prima di spendere qualcosa.
Sia il piano gratuito sia Rork Pro includono cinque usi di prova di Rork Max a settimana, quindi puoi testare l’output iOS nativo su qualsiasi piano prima di decidere se pagare per esso. Questa prova è il modo più pratico per valutare cosa producono davvero le funzioni Max.
Il piano intermedio aggiunge Android nativo (Kotlin + Compose), Expo cross-platform (React Native), progetti privati e dev mode con accesso completo all’editor del codice. Il supporto sale da assente nel piano gratuito a email nel piano più economico e chat in quello più alto.
Tutti i piani a pagamento sono in abbonamento. I crediti si azzerano nell’anniversario mensile del tuo primo acquisto. I crediti del piano gratuito si azzerano all’inizio di ogni mese solare. I piani a pagamento non hanno alcun limite giornaliero di crediti, quindi puoi usare l’intera assegnazione mensile in una sola sessione.
Rork Cloud prevede un addebito separato rispetto ai crediti dei messaggi AI. Dopo la mia build completa, i crediti cloud mostravan o $1.00 utilizzato. È importante tenerne conto prima di iniziare, soprattutto nel piano gratuito.
La documentazione di Rork non menziona alcuna garanzia di rimborso. Il pagamento avviene tramite Stripe.
Quale piano è adatto a quale utente: Il piano gratuito è adatto a chiunque voglia valutare lo strumento o costruire un progetto web personale. Rork Pro è il punto di ingresso pratico per lavori Android professionali o cross-platform. Rork Max ha senso quando hai bisogno di un’app iOS nativa e la qualità dell’output giustifica il prezzo per il tuo caso d’uso.
Alternative a Rork
Il concorrente più diretto è Lovable, un builder di web app basato su chat con un approccio simile “descrivi la tua app, ottieni un prodotto funzionante”. Rork usa “Lovable to Mobile App” come opzione di avvio rapido sulla propria homepage, posizionandosi come il passo logico successivo quando ti serve il mobile nativo oltre alla web app.
Lovable è adatto agli utenti che vogliono principalmente web app con integrazione Supabase e un prezzo di ingresso più basso. Rork diventa la scelta migliore nel momento in cui hai bisogno di vero codice mobile nativo. Nessun altro builder basato su chat attualmente produce vero SwiftUI o Kotlin nativo adatto all’invio su App Store.
| Funzionalità | Rork | Lovable |
|---|---|---|
| Facilità d’Uso | Onboarding pulito; il sistema di crediti richiede un po’ di lettura. | Prompt-to-app semplice; curva di apprendimento inferiore. |
| Ideale Per | iOS/Android nativi oltre al web da un unico progetto. | Web app con backend Supabase. |
| Backend & Dati | Rork Cloud (Postgres + Cloudflare) o proprio Supabase. | Integrazione Supabase. |
| Flessibilità del Design | Modifiche basate su chat; editor del codice nei piani a pagamento. | Modifiche basate su chat; editor visivo disponibile. |
| Modello di Prezzo | Da free a oltre $200/mo; iOS richiede il livello più alto. | Da free a $25+/mo; ingresso più accessibile. |
Verdetto Finale: Rork Vale la Pena?
Se hai bisogno di output iOS nativo, una vera app SwiftUI che possa arrivare su App Store, Rork è l’opzione più diretta attualmente disponibile tra i builder basati su chat. Nient’altro in questa categoria produce vero codice iOS nativo da un prompt in testo semplice, e la qualità dell’output di una build di venti minuti con un brief complesso avrebbe richiesto a un team di sviluppo giorni solo per la fase di scaffolding. Per quel caso d’uso specifico, il prezzo di Rork Max è alto ma riflette ciò che la build effettivamente fornisce.
Per le web app e Android, il calcolo è più ristretto. Rork Pro offre un output web e Android solido con backend ospitato e progetti privati, il che è competitivo al prezzo di ingresso. Se ti serve solo il web, altri strumenti offrono output paragonabile a un prezzo iniziale più basso e senza dover gestire un sistema di crediti a livelli.
Chi dovrebbe guardare altrove: chiunque voglia un editor visuale drag-and-drop, o chi abbia bisogno di un controllo front-end granulare senza descrivere le modifiche in chat. Rork prende decisioni architetturali al posto tuo e, sebbene tali decisioni siano di solito sensate, non sono sempre quelle che avresti scelto tu. Per alcuni builder questo compromesso va bene; per altri sarà una frustrazione quotidiana.

