A plant care app for iPhone. Tracks your houseplants and garden plants and tells you when to water, feed, prune, repot, rotate, and mist them.
- Xcode 15 or later
- iOS 17+ device or simulator
xcodegeninstalled (brew install xcodegen)
-
Clone the repo
-
Generate the Xcode project
xcodegen generateThis creates
Tend.xcodeprojfromproject.yml. -
Add your Anthropic API key (optional — the app works fully without it)
- Copy
Tend/Resources/Secrets.example.plisttoTend/Resources/Secrets.plist - Replace
your-anthropic-api-key-herewith your real key from console.anthropic.com Secrets.plistis gitignored — it will never be committed
- Copy
-
Open and run
open Tend.xcodeprojSelect your device or simulator, then run (⌘R).
-
First run
- Go to Settings to load sample data and enable notifications
- Add your first plant via the + button on the Today or Plants tab
- Long-press the Home Screen until icons jiggle.
- Tap + (top-left on iOS 16+) and search for Tend.
- Choose a size — Small (hero plant photo), Medium (up to 3 plant cards), or Large (list of up to 6 tasks).
- Tap Add Widget, then tap Done.
Tapping the widget opens the Tend dashboard directly.
- Long-press the Lock Screen and tap Customize.
- Tap the Lock Screen itself (not the Notification area).
- Tap the widget row below the time and choose Tend Today.
- Pick a lock screen size — Circular (due count), Rectangular (summary line), or Inline (single line).
- Tap Done and confirm.
The widget refreshes automatically at midnight (to roll over today's tasks) and whenever Tend is foregrounded. You can force an immediate refresh by opening Tend and completing or editing any care task.
Note: The App Groups capability must be enabled for both targets in Xcode (matching identifier
group.com.martha.Tend) for the widget to read the same data as the app. See the Widget section inCLAUDE.mdfor details.
The "Identify care needs" feature sends the plant species name to the Anthropic API and receives suggested care intervals. Without a key, tapping the button shows a clear error and the app falls back to the bundled care database. All other features work offline.