Aller au contenu

Template Style de vie

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 écrans
  • iOS et Android
  • Données d’exemple
  • Mis à jour le 4 nov. 2026
  • Version vérifiée

Copie gratuite · Code source complet · Sans carte bancaire

Écrans

6 écrans de l’app fonctionnelle.

Contenu

  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

À propos de ce modèle

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

Ce que vous obtenez

  • Code source complet — Expo et React Native en TypeScript, en app dans votre espace de travail.
  • Aperçu en direct — testez chaque changement dans votre navigateur ou sur votre téléphone.
  • Version vérifiée — elle compile et chaque écran s’ouvre sans erreur.
  • Assistant IA — modifiez tout par chat ; chaque changement consomme des crédits.
  • Builds et envoi aux stores — builds iOS et Android, envoyés à l’App Store et à Google Play depuis Publier.
  • Aucun crédit pour copier — la copie elle-même est gratuite.

Conçu avec la version actuelle de FluxNative.

Ce qu’il vous faut

  • Un compte FluxNative — le forfait Free accepte jusqu’à 2 apps.
  • Aucun backend au départ — elle tourne sur des données d’exemple jusqu’à ce que vous connectiez le vôtre.
  • Creator ou plus — pour les builds natifs et l’envoi aux stores.
  • Comptes de store — Apple Developer Program (99 US$ par an) et Google Play (25 US$ une fois), pour publier.

Ce que contient le code

écrans
22
fichiers dans votre copie
429
lignes écrites pour cette app
8 212
composants d’interface prêts à l’emploi
142

Textes de l’app en anglais et vietnamien

Stack technique

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

Tiré du package.json de cette version.

Système de design

Titres
Police du système
Texte
Police du système
  • Modes clair et sombre
  • Liquid Glass
  • Boutons en pilule
  • Cartes simples

Configuration après le fork

Votre copie s’ouvre avec l’assistant IA qui l’a créée. Suivez les étapes dans l’ordre : connectez sous Serveur ce qu’une étape demande, puis envoyez chaque 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 pour l’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 pour l’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 pour l’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 pour l’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 pour l’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.

Comment utiliser ce modèle

  1. Utilisez le modèle pour obtenir une copie modifiable, avec son code source, dans votre espace de travail (Modèles).
  2. Demandez à l’assistant IA les changements voulus, avec vos propres mots (Travailler avec l’assistant).
  3. Essayez chaque changement dans l’aperçu en direct ou sur votre téléphone (Aperçu).
  4. Avec Creator ou plus, compilez-le pour iOS et Android et envoyez-le aux stores (Vue d’ensemble de la publication).

Licence et support

Licence

L’app créée pour vous vous appartient ; le code du modèle reste à InspireUI et vous est concédé sous licence pour vos apps (Conditions › Notre propriété intellectuelle).

Aide

  • Guides sur les templates, l’assistant et la publication.
  • Contacter le support depuis Aide ; réponse en général sous 1 à 2 jours ouvrés.
  • Dans votre copie, interrogez l’assistant IA sur n’importe quel écran ou fichier.

Créé par FluxNative

Politique de support

Questions

Est-ce gratuit ?

Copier un template gratuit ne coûte rien, pas même des crédits ; un template Premium est un achat unique par site web. Les changements par chat et les builds consomment des crédits.

Qu’est-ce qui m’appartient ?

L’app créée pour vous vous appartient. Le code du template reste à InspireUI et vous est concédé sous licence pour vos apps (Conditions › Notre propriété intellectuelle).

Faut-il savoir coder ?

Non. Demandez des changements à l’assistant en mots simples ; le code source complet est là si vous le voulez.

Y a-t-il un backend inclus ?

Non. Une app complète nomme le backend requis et vous connectez le vôtre sous Server ; un design tourne sur des données d’exemple.

Puis-je changer le design ?

Oui. L’onglet Design règle la couleur de marque, les couleurs, les polices et les angles sans coût en crédits ; l’assistant change le reste.

Quel forfait pour publier ?

Creator ou plus compile et envoie aux stores, avec vos propres comptes Apple et Google. L’app d’un template Premium se compile avec tout forfait dès que son site web est connecté.

Puis-je télécharger le code source ?

Oui, avec Télécharger le code source ou Push vers GitHub, dès que votre espace de travail a acheté un forfait, des crédits ou un template payant. L’app d’un template Premium exige aussi son site web connecté.

Et si elle a été créée avec une version antérieure de FluxNative ?

Votre copie fonctionne telle quelle. Demandez à l’assistant de la mettre à jour pour les nouveautés comme les langues et devises de l’app ; c’est la dernière étape de configuration.

Prêt à en faire votre app ?

Partez de Verdant AI Plant Identifier and Care App et changez tout par chat. Votre copie inclut tout le code source.

Copie gratuite. Sans carte bancaire.

Taking a little longer than usual…

Loading FluxNative