sprout-track-cli
v1.0.3
Published
Command-line interface for Sprout-Track baby tracking application
Downloads
102
Maintainers
Readme
Sprout-Track CLI
Command-line interface for Sprout-Track baby tracking application.
Installation
npm install -g sprout-track-cliOr with npx:
npx sprout-track-cli <command>Quick Start
Configure your server:
sprout-track config set-server https://your-instance.comAuthenticate:
# PIN authentication sprout-track auth login --pin 123456 --family my-family # Account authentication sprout-track auth login --email [email protected]Set a default baby (optional):
sprout-track baby list sprout-track baby select <baby-id>Start logging activities:
# Quick log a bottle feed (uses your server's default unit) sprout-track feed log bottle --amount 4 # Log a diaper change sprout-track diaper log wet # Start a nap sprout-track sleep start --type NAP # View timeline sprout-track timeline
Default Units
The CLI automatically uses your server's default unit settings for measurements and feeding. These are cached locally after login:
- Bottle feeding: Uses
defaultBottleUnit(e.g., OZ, ML) - Solid feeding: Uses
defaultSolidsUnit(e.g., TBSP, G) - Height/Head: Uses
defaultHeightUnit(e.g., IN, CM) - Weight: Uses
defaultWeightUnit(e.g., LB, KG, G) - Temperature: Uses
defaultTempUnit(e.g., F, C)
You can always override with --unit:
sprout-track feed log bottle --amount 120 --unit ML
sprout-track measurement log weight --value 3500 --unit GTo refresh cached settings:
sprout-track settings refreshCommands
Configuration
sprout-track config set-server <url> # Set server URL
sprout-track config set-output <fmt> # Set default output (json/table/plain)
sprout-track config show # Show current config
sprout-track config reset # Reset to defaultsAuthentication
sprout-track auth login # Interactive login
sprout-track auth logout # Clear credentials
sprout-track auth status # Check auth status
sprout-track auth whoami # Show current user
sprout-track auth refresh # Refresh tokenBaby Management
sprout-track baby list [--active]
sprout-track baby get <id>
sprout-track baby create --first-name <name> --birth-date <YYYY-MM-DD>
sprout-track baby update <id> [options]
sprout-track baby delete <id>
sprout-track baby select <id> # Set as default babyFeed Logging
sprout-track feed list -b <baby-id>
sprout-track feed log breast --side LEFT [--duration 15]
sprout-track feed log bottle --amount 4 [--unit OZ]
sprout-track feed log solids --food "carrots"
sprout-track feed create -b <id> --type BOTTLE --amount 4Sleep Logging
sprout-track sleep list -b <baby-id>
sprout-track sleep start --type NAP [--location crib]
sprout-track sleep end [--quality GOOD]
sprout-track sleep create -b <id> --type NIGHT_SLEEP --start <ISO8601>Diaper Logging
sprout-track diaper list -b <baby-id>
sprout-track diaper log wet
sprout-track diaper log dirty [--color yellow]
sprout-track diaper log both [--blowout]Measurements
sprout-track measurement list -b <baby-id> [--type WEIGHT]
sprout-track measurement log weight --value 12.5 [--unit LB]
sprout-track measurement log height --value 24 [--unit IN]
sprout-track measurement log temp --value 98.6 [--unit F]Other Activities
# Bath
sprout-track bath log [--soap] [--shampoo]
# Pump
sprout-track pump start
sprout-track pump end --left 3 --right 2.5
# Medicine
sprout-track medicine list
sprout-track medicine-log log --medicine <id> --dose 5
# Notes
sprout-track note add "First smile today!"
# Milestones
sprout-track milestone create --title "First steps" --category MOTORTimeline
sprout-track timeline [-b <baby-id>] [--limit 20]Management
# Caretakers
sprout-track caretaker list
sprout-track caretaker create --name "Grandma" --login-id 02 --pin 1234
# Contacts
sprout-track contact list
sprout-track contact create --name "Dr. Smith" --role pediatrician
# Calendar
sprout-track calendar list
sprout-track calendar create --title "Doctor visit" --type APPOINTMENT --start <ISO8601>
# Settings
sprout-track settings get
sprout-track settings set --bottle-unit ML --weight-unit KGGlobal Options
All commands support:
--output <format> # json, table, or plain (default: table)
--help # Show command helpOutput Formats
- table (default): Formatted tables for terminal display
- json: JSON output for programmatic use
- plain: Tab-separated values for piping
Example:
sprout-track baby list --output json | jq '.[0].id'Configuration File
Config is stored at ~/.config/sprout-track/config.json (Linux/macOS) or %APPDATA%\sprout-track\config.json (Windows).
{
"server": "https://your-instance.com",
"token": "...",
"familySlug": "my-family",
"defaultBabyId": "abc-123",
"outputFormat": "table"
}For AI Agents
See docs/AI_AGENT_GUIDE.md for comprehensive documentation designed for AI agent integration.
Development
# Clone and install
git clone https://github.com/Oak-and-Sprout/sprout-track-cli
cd sprout-track-cli
npm install
# Build
npm run build
# Link for local testing
npm link
# Run tests
npm testLicense
MIT License - see LICENSE for details.
