npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

sprout-track-cli

v1.0.3

Published

Command-line interface for Sprout-Track baby tracking application

Downloads

102

Readme

Sprout-Track CLI

Command-line interface for Sprout-Track baby tracking application.

Installation

npm install -g sprout-track-cli

Or with npx:

npx sprout-track-cli <command>

Quick Start

  1. Configure your server:

    sprout-track config set-server https://your-instance.com
  2. Authenticate:

    # PIN authentication
    sprout-track auth login --pin 123456 --family my-family
    
    # Account authentication
    sprout-track auth login --email [email protected]
  3. Set a default baby (optional):

    sprout-track baby list
    sprout-track baby select <baby-id>
  4. 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 G

To refresh cached settings:

sprout-track settings refresh

Commands

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 defaults

Authentication

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 token

Baby 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 baby

Feed 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 4

Sleep 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 MOTOR

Timeline

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 KG

Global Options

All commands support:

--output <format>    # json, table, or plain (default: table)
--help               # Show command help

Output 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 test

License

MIT License - see LICENSE for details.