Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

GardenPulse - Grow Smarter, Anywhere

Expo SDK 54 React Native TypeScript Firebase Gemini AI License Proprietary

The first method-agnostic garden assistant - soil, hydro, container, or indoor - with location-aware intelligence, on-device AI diagnostics, and privacy-first automation.


What is GardenPulse?

GardenPulse is a smart urban garden companion that eliminates the guesswork out of growing. Whether you're tending windowsill herbs, managing a balcony container garden, running a hydroponic setup, or maintaining 50+ houseplants - GardenPulse adapts every recommendation to your specific growing method, your local climate, and your live weather conditions.

Tagline: Grow Smarter, Anywhere.

Unlike generic plant apps, GardenPulse is method-agnostic: the entire UI, care schedule, and AI guidance adapts based on how you grow - not a one-size-fits-all template. Core tools are 100% free, forever, with a privacy-first, offline-capable architecture.


Key Features

AI-Powered Intelligence

FeatureDescription
Method-Agnostic Plant IDSnap a leaf → AI detects plant species, growing method, and likely issues (deficiency, pest, overwatering)
Localized AI AgronomistOn-device ML evaluates leaf patterns against user-logged metrics and regional climate data
Smart Weather IntegrationAuto-adjusts care schedules based on live forecast (e.g., "Rain tomorrow → skip watering today")
Gemini Vision DiagnosticsAll leaf-scan diagnostics run on-device - photos are never uploaded to the cloud

Location & Context Intelligence

FeatureDescription
GPS / Network LocationEnables hyper-local plant recommendations and regional pest/disease alerts
Auto Planting Zone DetectionUSDA Hardiness Zone auto-detect filters the plant database to region-survivable species
Live Weather APIOpenWeatherMap One Call API 3.0 for real-time temp, humidity, precipitation, and UV index
Local Community MapsOpt-in anonymized data shows what's thriving in your ZIP code right now

Smart Scheduling & Automation

  • Adaptive Reminders - Adjusts timing based on user behavior, live weather forecasts, and seasonal changes
  • Sunrise/Sunset Tracking - Schedules grow-tent light cycles and outdoor watering relative to solar events
  • Timezone-Aware Engine - Daylight saving auto-adjust included; travel-friendly reminder controls

Camera & Media Tools

  • Leaf Diagnostics Camera - On-device AI analyzes discoloration without any cloud upload
  • Progress Timelapse Generator - Auto-compiles photos into shareable growth reels with method-specific overlays
  • QR / Label Scanner - Scan nutrient bottles, seed packets, or Bluetooth sensor IDs for auto-logging
  • Voice Logging - Hands-free operation via microphone for users with mobility challenges

Analytics & Personalization

  • Garden Health Score™ - Tracks 8 metrics (soil moisture, light exposure, pH stability, growth rate) with plain-English insights
  • Adaptive Growing Profiles - Toggle between "Low-Light Apartment", "Sunny Balcony", "Hydro Tent", "Raised Bed"
  • Cross-Method Insights - e.g., "Your hydro basil grew 20% faster than soil → try adjusting nutrient strength"
  • Cemetery Log - Historical log of failed grows to identify root causes (pH spikes, root rot) over time

Monetization (AdMob Optimized)

Ad TypeTriggerTarget eCPM
High-Intent InterstitialTriggered at dosing calculation / export moments$25–45 (Tier 1)
Contextual Native AdsStyled as "Garden Tips" within the activity timeline-
Rewarded VideosUnlock PDF garden plans, compliance logs, advanced calculators-
Supporter Badge$2.99 one-time to remove interstitials only-

Community & Viral Features

  • Garden Clusters - Join location or interest-based groups; share tips, swap seeds, compare progress
  • Growth Streaks + Method Badges - Unlock "Hydro Master", "Balcony Boss", "Zero-Waste Gardener"
  • Shareable Progress Reels - Auto-generated before/after timelapses and "My Garden Setup" infographics for Instagram/TikTok
  • Weekly Bloom Report - Push/email digest with weather correlation, progress stats, and contextual tips

Technology Stack

LayerTechnologyVersion
Mobile FrameworkReact Native + ExpoSDK 54.0.35 (RN 0.81.5)
LanguageTypeScript~5.9.2
UI ComponentsReact Native Paper (Material Design)^5.15.3
Glassmorphic UI@callstack/liquid-glass + expo-blur^0.8.0 / ~15.0.8
Icons@expo/vector-icons^15.0.3
Backend & AuthFirebase Auth, Firestore, Storage^12.14.0
AI EngineGoogle AI Studio - Gemini Multimodal & Vision^0.24.1
Locationexpo-location + Google Maps Platform~19.0.8
Mapsreact-native-maps1.20.1
WeatherOpenWeatherMap One Call API 3.0-
Cameraexpo-camera~17.0.10
Mediaexpo-image-picker, expo-media-library-
Audioexpo-av~16.0.8
Offline Storage@react-native-async-storage/async-storage2.2.0
State ManagementZustand^5.0.14
MonetizationGoogle AdMob (react-native-google-mobile-ads)^16.3.3
Vector Graphicsreact-native-svg15.12.1

Project Structure

GardenPulse/
├── .agents/                  # Local AI agent skills (excluded from Git)
│   └── skills/               # Skillfish-managed agent skill packs
├── .claude/                  # Claude AI assistant context files
├── .docs/                    # Product blueprint & tech stack documents
│   └── Gardenpulse .md       # Full product specification
├── .expo/                    # Expo local build cache (auto-generated)
├── assets/                   # App icons, splash screens, banner assets
│   ├── banner-app-logo.png   # App banner (used in README)
│   ├── icon.png              # App icon (iOS)
│   ├── favicon.png           # Web favicon
│   ├── android-icon-foreground.png
│   ├── android-icon-background.png
│   └── android-icon-monochrome.png
├── App.tsx                   # Root application component
├── index.ts                  # Expo entry point
├── app.json                  # Expo config - permissions, plugins, AdMob IDs
├── metro.config.js           # Custom Metro bundler configuration
├── tsconfig.json             # TypeScript compiler settings
├── package.json              # Dependencies & npm scripts
├── INSTALL.md                # Detailed setup guide for all APIs & credentials
├── Architecture.drawio       # System architecture diagram
├── GARDENPULSE.md            # Product blueprint (markdown mirror)
├── AGENTS.md                 # Agent / AI assistant guidelines
├── CLAUDE.md                 # Claude assistant context
└── LICENSE                   # Proprietary License

Quick Start

Prerequisites

Ensure the following are installed on your machine:

ToolMinimum VersionNotes
Node.jsv18.x or v20.xLTS recommended
npmv9.x or laterBundled with Node
GitAny recent versionFor cloning
Expo GoLatestiOS / Android device app for development
Android StudioOptionalFor Android Emulator
XcodeOptional (macOS only)For iOS Simulator

1. Clone & Install

git clone <repository-url>
cd GardenPulse
npm install

2. Configure Environment Variables

Create a .env file in the project root and populate it with your API keys:

# ── Google AI Studio (Gemini) ───────────────────────────────
EXPO_PUBLIC_GEMINI_API_KEY=your_gemini_api_key_here

# ── OpenWeatherMap ──────────────────────────────────────────
EXPO_PUBLIC_OPENWEATHER_API_KEY=your_openweather_api_key_here

# ── Firebase ────────────────────────────────────────────────
EXPO_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key_here
EXPO_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
EXPO_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
EXPO_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com
EXPO_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
EXPO_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
EXPO_PUBLIC_FIREBASE_MEASUREMENT_ID=your_measurement_id

Note: Google Maps API keys are embedded in app.json under the Android/iOS config sections. See INSTALL.md for details.


3. Run the Development Server

npm run start       # Start Expo dev server (scan QR with Expo Go)
npm run android     # Launch on Android emulator / connected device
npm run ios         # Launch on iOS simulator (macOS only)
npm run web         # Launch web version in browser

Scan the QR code in the terminal with the Expo Go app on your physical device to preview the app instantly.


API Keys & Service Setup

ServiceWhere to Get ItDocs
Gemini AIGoogle AI StudioFree tier available
OpenWeatherMapopenweathermap.orgOne Call API 3.0
FirebaseFirebase ConsoleAuth + Firestore + Storage
Google MapsGoogle Cloud ConsoleMaps SDK for Android/iOS
AdMobAdMob ConsoleTest IDs pre-configured

The project ships with Google's standard AdMob test IDs so you can build and test ads immediately without a real AdMob account.


Production Build (Google Play Store)

# 1. Install EAS CLI
npm install -g eas-cli

# 2. Log in to Expo
eas login

# 3. Configure EAS project (first time only)
eas build:configure

# 4. Build production Android App Bundle (.aab)
eas build --platform android --profile production

The .aab output is ready for direct upload to the Google Play Console.

For full deployment instructions including iOS App Store builds, keystore management, and AdMob production ID configuration, see INSTALL.md.


UX & Design Philosophy

  • Method-First Onboarding - "How do you grow?" → app adapts its entire UI to soil / container / hydro / indoor
  • Instant Open - Zero required registration; opens directly to the dashboard or calculator
  • Sleek, Borderless Layout - Reduced visual noise using borderless card components, hairlineWidth accent borders, and optimized radius tokens
  • Glassmorphic Navigation - A premium frosted bottom tab bar using @callstack/liquid-glass (Apple Liquid Glass) on iOS and expo-blur on Android
  • Adaptive Themes - "Balcony Bright" (light) and "Grow Tent Dark" (low-light optimized) with matching glass tints and border values
  • Accessibility - Full VoiceOver/TalkBack support, dyslexia-friendly font toggle, color-blind mode, metric/imperial auto-detect

Privacy & Compliance

GardenPulse is designed with a privacy-first architecture:

  • ✅ All AI leaf diagnostics run on-device - no photos uploaded to the cloud
  • ✅ Location data never shared publicly without explicit user opt-in
  • ✅ GDPR / UK GDPR compliant - right-to-delete dashboard included
  • ✅ CCPA / PIPEDA compliant - "Do Not Sell My Info" toggle in settings
  • ✅ AdMob policies respected - no ads on permission screens; rewarded videos are always optional
  • ✅ Offline-first caching - core app functions work without an internet connection

Roadmap

PhaseFeature
MVPCore logging, AI diagnostics, weather scheduling, AdMob
Phase 2GardenPulse for Schools - STEM curriculum modules
Phase 3Hardware integrations - Bluetooth sensors, smart irrigation
Phase 4B2B white-label - Nurseries & seed brands
Phase 5Certification pathways - Urban ag nonprofit partnerships

Documentation

DocumentDescription
INSTALL.mdFull setup guide - API keys, Firebase config, AdMob IDs, Play Store deployment
GARDENPULSE.mdComplete product blueprint - features, UX flows, monetization model
Architecture.drawioSystem architecture diagram (open with draw.io)

License

This project is proprietary and confidential. All rights are reserved. See the LICENSE file for details.


Built with by the GardenPulse team  ·  Grow Smarter, Anywhere.

关于 About

Method-agnostic smart garden companion built with React Native, Expo, and TypeScript. Adapts to soil, hydro, container, or indoor setups with location-aware intelligence, OpenWeather integration, and privacy-first, on-device Gemini AI plant diagnostics.
admob-integrationcomputer-visioncross-platformexpofirebasegardening-appgemini-aigoogle-ai-studiolocation-awaremit-licensemobile-appoffline-firston-device-mlplant-identificationprivacy-focusedreact-nativesmart-agriculturetypescripturban-farmingweather-api

语言 Languages

TypeScript98.3%
Python1.4%
JavaScript0.3%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
37
Total Commits
峰值: 22次/周
Less
More

核心贡献者 Contributors