Applicazione web per l'analisi di immagini aeree da drone per scopi archeologici, utilizzando l'AI di Google Gemini.
🌐 App Live: https://dva-drone-vision-archaeology.loziobiz.workers.dev
View your app in AI Studio: https://ai.studio/apps/drive/1x0QTjGzoQwBcsuTwQZ5lhQ9LbB8Ldi66
- React 19 - Framework UI
- Vite 6 - Build tool e dev server
- TypeScript - Type safety
- Cloudflare Workers - Hosting e deployment
- Google Gemini AI - Analisi delle immagini
- Tailwind CSS - Styling
Prerequisites: Node.js (v18 o superiore)
-
Installa le dipendenze:
npm install
-
Configura la chiave API di Gemini:
- Crea un file
.dev.varsnella root del progetto - Aggiungi la tua chiave API:
GEMINI_API_KEY=your-api-key-here
- Crea un file
-
Avvia il server di sviluppo:
npm run dev
-
Apri il browser su
http://localhost:3000
Per semplificare il processo di deployment, puoi usare lo script interattivo:
./.cloudflare-deploy.shLo script offre le seguenti opzioni:
- 🚀 Deploy completo (build + deploy)
- 🔨 Solo build
- 👀 Preview locale
- 📊 Visualizza logs
- 🔑 Gestisci secrets
- 📋 Info deployment
- ⏮️ Rollback
- 🧹 Pulisci cache
-
Installa Wrangler (se non già installato):
npm install -g wrangler
-
Autenticati con Cloudflare:
npx wrangler login
-
Configura il secret per la chiave API di Gemini:
echo "your-api-key-here" | npx wrangler secret put GEMINI_API_KEY
-
Esegui il deploy:
npm run deploy
Dopo la prima configurazione, per deployare nuove versioni:
npm run deploynpm run dev- Avvia il server di sviluppo localenpm run build- Crea il build di produzionenpm run preview- Visualizza il build in locale prima del deploynpm run deploy- Esegue il build e il deploy su Cloudflare Workersnpm run cf-typegen- Genera i tipi TypeScript per i bindings di Cloudflare
Il file wrangler.jsonc contiene la configurazione per Cloudflare Workers:
- Sviluppo locale: Usa il file
.dev.vars - Produzione: Usa i secrets di Cloudflare Workers (configurati con
wrangler secret put)
dva-experiment/
├── components/ # Componenti React
├── hooks/ # Custom React hooks
├── services/ # Servizi (es. Gemini API)
├── worker/ # Codice del Cloudflare Worker
├── types.ts # Definizioni TypeScript
├── App.tsx # Componente principale
├── index.tsx # Entry point
├── vite.config.ts # Configurazione Vite
└── wrangler.jsonc # Configurazione Cloudflare Workers
L'applicazione è deployata sull'account: operations@keyformat.it
Per problemi o domande, consulta la documentazione di Cloudflare Workers.
{ "name": "dva-drone-vision-archaeology", "compatibility_date": "2025-11-16", "compatibility_flags": ["nodejs_compat"], "main": "worker/index.ts", "assets": { "directory": "./dist/client", "not_found_handling": "single-page-application" } }