Pular para o conteúdo

Template de Estilo de vida

Verdant AI Plant Identifier and Care App

An Expo and React Native app that identifies plants from a photo, checks sick leaves and schedules watering. It runs on sample data out of the box; connect Supabase and a Gemini key to make the AI real.

  • 22 telas
  • iOS e Android
  • Dados de exemplo
  • Atualizado em 4 de nov. de 2026
  • Versão verificada

Cópia grátis · Código completo · Sem cartão

Telas

6 telas do app em funcionamento.

O que vem incluído

  1. Identify a plant from a photo: best match, two look-alikes, confidence in words, pet safety and care at a glance
  2. Health check of a sick leaf: likely issue, marked spots on the photo, this week's steps as a checklist
  3. My plants by room, care rings and reminders derived from each plant's watering and feeding schedule
  4. "Ask about this plant" chat that knows the plant's species, room, watering and last health check
  5. Three AI tasks (identify, diagnose, plant-chat) run on Gemini through one Supabase Edge Function
  6. Sample mode: a 12-plant sample garden and designed sample AI answers, no backend needed

Sobre este modelo

Overview

Verdant is a complete plant identifier and care app on Expo SDK 57 and React Native. People point the camera at a plant to name it, photograph a sick leaf to see the likely problem and what to do this week, keep their plants by room with a care schedule, and ask questions about one plant. The look is bright and photo-led: white pages, real plant photos, a near-black capsule for the main action and a fresh green accent.

With .env blank it runs in sample mode: a labelled sample garden of 12 plants in 4 rooms (3 due today), a sample health history, and designed sample AI answers marked "Sample results". What the person adds is saved on the device. Connecting Supabase and a Gemini key switches every service to the live backend without code changes.

Key features

  • Camera with a framing guide, Identify and Diagnose modes, the photo library and snap tips; the web preview shows a labelled sample photo

  • Identification result: the photo full width, best match, confidence as words and a three-bar meter, why it matches, pet toxicity, light, water, humidity and temperature, two look-alikes to switch to with Undo

  • Health check: marked spots on the leaf, issue, signs, steps checklist, what to watch, a check-in reminder, Mark as better

  • My plants: photo grid by room, "N plants need water" with Water all and Undo; each plant has care rings, a photo timeline, notes, health history and a watering-rhythm chart

  • Reminders: today's done/due ring, a 7-day strip and local notifications at the person's time (Free covers 5 plants, Pro all)

  • A 17-species care guide with search, problems and similar plants

  • Onboarding with photo cards, a paywall, You (rooms, units, Delete my data), About, in-app Terms and Privacy, light and dark

Screens

22 screens: My plants, Identify, Identification result, Species guide, Plant health, Health check, My plant, Ask about this plant, Edit plant, Add plant, Find a plant, Reminders, You, Rooms, Welcome, Onboarding (value steps and "What do you grow?"), Verdant Pro, Photo credits, Terms, Privacy and About.

AI and backend

  • identify (vision, 2 units): photo in, three matches with high/medium/low confidence, care and pet safety out

  • diagnose (vision, 2 units): leaf photo in, issue, confidence, signs, steps, what to watch and up to 3 spots out; free accounts get one check

  • plant-chat (text, 1 unit): a question with the plant's care record, a short answer out

  • The app calls one Supabase Edge Function (ai) with an anonymous session; it charges units from a daily allowance and calls Gemini with your key

  • Supabase tables for rooms, plants, care events, plant photos and scans under per-user row-level security, plus a private photo bucket

  • The app asks once before the first photo or question goes to the AI provider; only what the person chooses is sent

Monetisation

Free: 3 identifications a day, 1 health check, phone reminders for 5 plants. Pro (yearly with a 7-day trial, or monthly) removes the limits. Purchases go through RevenueCat (react-native-purchases) and a webhook tells the server who has Pro. Until you connect RevenueCat to sell, the paywall shows sample prices and "Subscriptions open in the App Store version"; nothing is sold and Pro is never granted.

Reskin and photo credits

The plant words, care facets, care tasks, camera modes, onboarding choices and free limits live in src/config/domain.ts; the species in src/config/catalogue.ts; the server prompts take their domain words from DOMAIN in supabase/functions/ai/tasks.ts. The 50 bundled sample photos are CC0 or CC BY from Wikimedia Commons, iNaturalist, the WordPress photo directory and rawpixel, plus the kernel's Unsplash photos. Keep the in-app Photo credits page if you keep the photos, or replace the photos with your own.

Setup

Connect Supabase and apply the migrations, turn on the AI with your Gemini key and deploy the functions, connect RevenueCat to sell Pro, then make it yours. The README has each step.

aiplant identifierplant carehouseplantsgeminisupabaserevenuecatreact nativeexpocamerareminders

O que você recebe

  • Código completo: Expo e React Native em TypeScript, como um app no seu espaço de trabalho.
  • Prévia ao vivo: teste cada mudança no navegador ou no celular.
  • Versão verificada: compila e todas as telas abrem sem erros.
  • Assistente de IA: mude o que quiser pelo chat; cada mudança usa créditos.
  • Builds e envio às lojas: builds de iOS e Android, enviados à App Store e ao Google Play pelo Publish.
  • Copiar não gasta créditos: a cópia em si não custa nada.

Feito com a versão atual do FluxNative.

O que você precisa

  • Uma conta FluxNative: o plano Free comporta até 2 apps.
  • Sem backend para começar: usa dados de exemplo até você conectar o seu.
  • Creator ou superior: para builds nativos e envio às lojas.
  • Contas das lojas: Apple Developer Program (US$ 99 por ano) e Google Play (US$ 25 uma vez), para publicar.

O que vem no código

telas
22
arquivos na sua cópia
429
linhas escritas para este app
8.212
componentes de UI prontos
142

Textos do app em inglês e vietnamita

Stack técnica

Expo SDK
57.0.22
React Native
0.86.3
React
19.2.8
TypeScript
6.0.3
Expo Router
57.0.21
Supabase JS
2.112.3
RevenueCat
10.9.1

Do package.json desta versão.

Design system

Títulos
Fonte do sistema
Texto
Fonte do sistema
  • Modos claro e escuro
  • Liquid Glass
  • Botões em pílula
  • Cards simples

Configuração depois do fork

Sua cópia abre com o assistente de IA que a criou. Siga os passos em ordem: conecte em Server o que um passo pedir e depois envie cada prompt.

  1. Connect Supabase

    Server › Backend › Supabase. Apply the two migrations, allow anonymous sign-ins in the Supabase dashboard, and write the public URL and anon key to .env. Until then the app runs on sample data.

    Prompt para a IA

    Connect this app to my Supabase project (Server › Backend › Supabase). Write EXPO_PUBLIC_SUPABASE_URL and EXPO_PUBLIC_SUPABASE_ANON_KEY to .env. Apply supabase/migrations/20261019000000_ai_kit.sql, then supabase/migrations/20261019010000_verdant.sql. Remind me to turn on Authentication › Sign In / Providers › "Allow anonymous sign-ins" in the Supabase dashboard, because the app signs people in anonymously. Then check that My plants loads an empty garden from Supabase instead of the sample garden.

  2. Turn on the AI

    Server › API keys & secrets: add GEMINI_API_KEY. Deploy the ai function and push its secrets. Set AI_FREE_UNITS_PER_DAY to 6 (3 identifications a day) and AI_PRO_UNITS_PER_DAY to 500.

    Prompt para a IA

    Turn on Verdant's AI. I added GEMINI_API_KEY under Server › API keys & secrets. Set AI_FREE_UNITS_PER_DAY to 6 and AI_PRO_UNITS_PER_DAY to 500 as secrets too. Deploy the supabase/functions/ai function and push its secrets, then invoke it with { "task": "usage" } as a test user and show me the answer. Do not change the tasks in supabase/functions/ai/tasks.ts.

  3. Sell Pro with RevenueCat

    Server › Monetization: connect RevenueCat (yearly with a 7-day trial and monthly products, entitlement "pro"). Save REVENUECAT_WEBHOOK_SECRET, deploy revenuecat-webhook with JWT verification off, add the webhook in RevenueCat.

    Prompt para a IA

    Set up Verdant Pro through RevenueCat. Connect RevenueCat under Server › Monetization so EXPO_PUBLIC_REVENUECAT_IOS_KEY and EXPO_PUBLIC_REVENUECAT_ANDROID_KEY are in .env. The entitlement is "pro"; the plans are yearly with a 7-day free trial and monthly (keep PLAN_PREVIEW in src/services/iap/index.ts in step with my prices). Generate a long random REVENUECAT_WEBHOOK_SECRET under Server › API keys & secrets, deploy supabase/functions/revenuecat-webhook with JWT verification off, push the secret, and tell me the webhook URL and Authorization header to paste into RevenueCat › Integrations › Webhooks.

  4. Camera and reminders on a phone build

    The camera (expo-camera) and care reminders (expo-notifications) need a native build; the web preview shows a sample photo instead of the camera. Check the permission texts in app.json first.

    Prompt para a IA

    Prepare Verdant for its first phone build. Review the camera and photo library permission texts in app.json (NSCameraUsageDescription, NSPhotoLibraryUsageDescription and the expo-camera and expo-image-picker plugins) and make them name my app. Keep expo-camera and expo-notifications in the build. Then tell me how to test identification with the real camera and a care reminder on a device.

  5. Set your icon, store IDs and legal pages

    Rename the app, set your icon and colours, and point the legal links at your pages. Replace the in-app Terms and Privacy words or set the hosted page URLs.

    Prompt para a IA

    Make this app mine: rename Verdant to my app's name everywhere a person sees it (app.json name, About, paywall, onboarding, prompts), change the bundle ID and package from com.fluxnative.verdant, draw a new icon in assets/icon.svg and assets/adaptive-icon.svg and render the PNGs, and set my brand colour in src/theme/brand.ts (keep the near-black buttons unless I say otherwise). Set EXPO_PUBLIC_PRIVACY_POLICY_URL, EXPO_PUBLIC_TERMS_URL and EXPO_PUBLIC_SUPPORT_URL in .env if I have hosted pages, otherwise rewrite the in-app Terms and Privacy pages in src/features/legal for my business. Keep the Photo credits page while the sample photos stay.

Como usar este template

  1. Use o template para ter uma cópia editável, com o código-fonte, no seu espaço de trabalho (Templates).
  2. Peça ao assistente de IA as mudanças que quiser, com suas próprias palavras (Trabalhar com o assistente).
  3. Teste cada mudança na prévia ao vivo ou no seu celular (Prévia).
  4. No Creator ou superior, gere o app para iOS e Android e envie às lojas (Visão geral da publicação).

Licença e suporte

Licença

O app criado para você é seu; o código do modelo continua da InspireUI e é licenciado para uso nos seus apps (Termos › Nossa propriedade intelectual).

Ajuda

  • Guias sobre templates, o assistente e a publicação.
  • Falar com o suporte em Ajuda; respondemos em geral em 1–2 dias úteis.
  • Na sua cópia, pergunte ao assistente de IA sobre qualquer tela ou arquivo.

Feito pelo FluxNative

Política de suporte

Perguntas

É grátis?

Copiar um template grátis não custa nada, nem créditos; um Premium é uma compra única por site. Mudanças pelo chat e builds usam créditos.

O que é meu?

Você é dono do app feito para você. O código do template continua da InspireUI e é licenciado para uso nos seus apps (Terms › Our intellectual property).

Preciso saber programar?

Não. Peça mudanças ao assistente com suas palavras; o código completo está lá quando quiser.

Vem com backend?

Não. Um app completo diz qual backend precisa e você conecta o seu em Server; um design usa dados de exemplo.

Posso mudar o design?

Sim. A aba Design muda cor da marca, cores, fontes e cantos sem gastar créditos; o assistente muda o resto.

Qual plano preciso para publicar?

Creator ou superior faz build e envia às lojas, com suas próprias contas Apple e Google. O app de um template Premium faz build em qualquer plano depois que o site é conectado.

Posso baixar o código?

Sim, com Download source ou Push to GitHub, depois que seu espaço de trabalho comprar um plano, créditos ou um template pago. O app de um template Premium também precisa do site conectado.

E se foi feito com um FluxNative anterior?

Sua cópia funciona como está. Peça ao assistente para atualizá-la com recursos novos, como idiomas e moedas do app; é o último passo da configuração.

Pronto para transformar no seu app?

Comece a partir de Verdant AI Plant Identifier and Care App e mude o que quiser pelo chat. Sua cópia vem com o código-fonte completo.

Cópia grátis. Sem cartão de crédito.

Taking a little longer than usual…

Loading FluxNative