Skip to content

CLI tool for ZEC/BTC portfolio tracking with goal-based scenario analysis

License

Notifications You must be signed in to change notification settings

ben-marrett/shieldstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shieldstack

A CLI tool for ZEC/BTC portfolio tracking with goal-based scenario analysis. Built by and for the Zcash community. Track your holdings, visualize progress toward goals (in BTC, ZEC, and/or USD), analyze the ZEC/BTC ratio against historical averages, and run "what if" scenarios.

Installation

npm install -g shieldstack

Requires Node.js 18 or later.

Quick Start

# Set up your holdings
shieldstack update

# View your dashboard
shieldstack

# Set goals interactively
shieldstack goal

# Or set goals directly:
# Holdings goals: "I want to own X units"
shieldstack goal holdings zec 10

# Value goals: "I want portfolio worth X"
shieldstack goal value btc 0.1

# Shorthand (defaults to value goal)
shieldstack goal btc 0.1

# List and manage goals
shieldstack goal list
shieldstack goal clear 1

Commands

shieldstack (default)

Displays the main dashboard with:

  • Current holdings and values
  • Total portfolio in BTC terms
  • Progress bar to goal
  • Allocation breakdown (% in ZEC/BTC/USD)
  • ZEC/BTC ratio vs 30-day average
  • Scenario projections
  • Breakeven calculation

shieldstack update

Interactive prompts to update your ZEC, BTC, and USD amounts.

shieldstack goal

Manage your goals. Two types of goals are supported:

  • Holdings goals: "I want to own X units" - tracks actual asset holdings
  • Value goals: "I want portfolio worth X" - tracks total portfolio value
shieldstack goal                      # Interactive wizard (or list if non-TTY)
shieldstack goal list                 # List all goals with IDs
shieldstack goal holdings zec 10      # Set holdings goal: own 10 ZEC
shieldstack goal value btc 0.1        # Set value goal: portfolio ≥ 0.1 BTC
shieldstack goal btc 0.1              # Shorthand for value goal
shieldstack goal clear <id>           # Remove goal by ID

Privacy & Security

  • No telemetry. Only external call is to CoinGecko for price data (they see your IP, not your holdings).
  • Local storage. Holdings stored in plaintext at ~/.shieldstack/. No private keys stored, but amounts are visible to anyone with file access.
  • Exclude from cloud backup if concerned about privacy.

Technical Decisions

Decimal precision: Uses decimal.js for all financial calculations to avoid JavaScript float precision issues.

Single API source: Uses CoinGecko for price data. Offline caching handles short outages.

Storage format: Plain JSON files for easy inspection and backup.

Data Attribution

Price data provided by CoinGecko. See their API terms.

Uses CoinGecko public API. Rate limits vary (5-30 calls/min). Prices are cached for 5 minutes.

Disclaimer

This tool is for informational purposes only and does not constitute financial advice. Cryptocurrency investments carry risk. Always do your own research. Prices sourced from CoinGecko - actual exchange rates may vary.

License

MIT

About

CLI tool for ZEC/BTC portfolio tracking with goal-based scenario analysis

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •