Metadata-Version: 2.4
Name: sproutsignal
Version: 0.1.0
Summary: A private, local plant care desk with transparent watering forecasts.
Author: SproutSignal maintainers
License-Expression: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: End Users/Desktop
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# SproutSignal

SproutSignal is a private, local-first plant care desk. It turns the little signals you already notice — soil feel, light, and the last watering date — into a gentle daily care route.

![SproutSignal dashboard](docs/screenshot.png)

## Why it helps

Plant schedules are a useful starting point, not a rule. SproutSignal uses a compact, explainable scoring model to balance a plant's usual interval with its current soil and light conditions. The result is a clear **water**, **check**, **hold off**, or **on track** recommendation for every plant.

Everything stays on your computer in a small JSON file. There is no account, sync service, telemetry, or cloud database.

## Features

- Daily care route sorted by watering risk.
- Transparent watering forecast built from elapsed days, soil condition, and light.
- One-click “mark watered” action that immediately recalculates the route.
- Seeded collection so the workflow is useful on first launch.
- A local JSON data file you can keep, back up, or edit.

## Install

Requires Python 3.10 or newer.

```bash
git clone https://github.com/iwaheedsattar/sproutsignal.git
cd sproutsignal
python3 app.py
```

Or install as a package:

```bash
python3 -m pip install sproutsignal
sproutsignal
```

## Use it

1. Open the local address shown in the terminal.
2. Start with the recommended care route.
3. Check soil before watering, then select **Mark watered** to reset that plant's rhythm.
4. Add your own plants in `~/.sproutsignal.json` (or pass a custom file with `--data`).

Example record:

```json
{
  "id": "fern",
  "name": "Fernie",
  "species": "Boston fern",
  "room": "Kitchen",
  "last_watered": "2026-07-10",
  "water_every_days": 4,
  "soil": "slightly dry",
  "light": "medium",
  "emoji": "🌿"
}
```

## Development

```bash
python3 -m unittest discover -s tests
python3 app.py --no-open --data ./.sproutsignal.json
```

## Roadmap

- Add a friendly plant editor and photo cards.
- Learn individualized intervals from logged soil checks.
- Add desktop reminders and offline backup export.
- Support shared household care routes.

## License

MIT
