From e8c7c60c9edf6a9a6973a5662859c9bae51eaf3a Mon Sep 17 00:00:00 2001 From: lmatos Date: Thu, 7 May 2026 18:39:19 +0000 Subject: [PATCH] Subir archivos a "/" --- .env.example | 15 +++++++++++++++ .gitignore | 8 ++++++++ index.html | 13 +++++++++++++ metadata.json | 6 ++++++ package.json | 40 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 82 insertions(+) create mode 100644 .env.example create mode 100644 .gitignore create mode 100644 index.html create mode 100644 metadata.json create mode 100644 package.json diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..36e4b26 --- /dev/null +++ b/.env.example @@ -0,0 +1,15 @@ +# GEMINI_API_KEY: Required for Gemini AI API calls. +# AI Studio automatically injects this at runtime from user secrets. +# Users configure this via the Secrets panel in the AI Studio UI. +GEMINI_API_KEY="MY_GEMINI_API_KEY" + +# APP_URL: The URL where this applet is hosted. +# AI Studio automatically injects this at runtime with the Cloud Run service URL. +# Used for self-referential links, OAuth callbacks, and API endpoints. +APP_URL="MY_APP_URL" + +# Supabase configuration +VITE_SUPABASE_URL="YOUR_SUPABASE_URL" +VITE_SUPABASE_ANON_KEY="YOUR_SUPABASE_ANON_KEY" +VITE_N8N_WEBHOOK_URL="YOUR_N8N_WEBHOOK_URL" +VITE_RECAPTCHA_SITE_KEY="YOUR_RECAPTCHA_SITE_KEY" diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5a86d2a --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +node_modules/ +build/ +dist/ +coverage/ +.DS_Store +*.log +.env* +!.env.example diff --git a/index.html b/index.html new file mode 100644 index 0000000..4edc241 --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + Cómete el mundo y gana + + +
+ + + + diff --git a/metadata.json b/metadata.json new file mode 100644 index 0000000..24ac69b --- /dev/null +++ b/metadata.json @@ -0,0 +1,6 @@ +{ + "name": "Cómete el mundo y gana", + "description": "App para campaña promocional Cómete el mundo y gana de Maggi y Nestlé, donde podrás escanear tus facturas, acumular puntos y ganar increíbles premios.", + "requestFramePermissions": [], + "majorCapabilities": [] +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..c5a7dc4 --- /dev/null +++ b/package.json @@ -0,0 +1,40 @@ +{ + "name": "react-example", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --port=3000 --host=0.0.0.0", + "build": "vite build", + "preview": "vite preview", + "clean": "rm -rf dist", + "lint": "tsc --noEmit" + }, + "dependencies": { + "@google/genai": "^1.29.0", + "@supabase/supabase-js": "^2.105.0", + "@tailwindcss/vite": "^4.1.14", + "@vitejs/plugin-react": "^5.0.4", + "clsx": "^2.1.1", + "dotenv": "^17.2.3", + "express": "^4.21.2", + "lucide-react": "^0.546.0", + "motion": "^12.23.24", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "react-google-recaptcha": "^3.1.0", + "react-router-dom": "^7.14.2", + "tailwind-merge": "^3.5.0", + "vite": "^6.2.0" + }, + "devDependencies": { + "@types/express": "^4.17.21", + "@types/node": "^22.14.0", + "@types/react-google-recaptcha": "^2.1.9", + "autoprefixer": "^10.4.21", + "tailwindcss": "^4.1.14", + "tsx": "^4.21.0", + "typescript": "~5.8.2", + "vite": "^6.2.0" + } +}