Package Installer CLI v3.12.0

A cross-platform, interactive CLI to scaffold modern web application templates

v3.0.0LatestMIT LicenseNode.js ≥18

Overview

Package Installer CLI v3.0.0 is a powerful, cross-platform interactive CLI tool designed to scaffold modern web applications with support for multiple frameworks, languages, and development tools. Create production-ready projects in seconds!

🚀 Quick Features
  • • 🎨 Multiple Frameworks: React, Next.js, Express, Angular, Vue, Rust
  • • 🔤 Language Support: TypeScript & JavaScript variants
  • • 🎭 UI Libraries: Tailwind CSS, Material-UI, shadcn/ui
  • • 📦 Smart Package Management: Auto-detects npm, yarn, pnpm
  • • ⚡ Lightning Fast: Optimized template generation
  • • 🌈 Beautiful CLI: Gorgeous terminal interface
✨ New in v3.0.0
  • • 📊 Enhanced Analytics Dashboard
  • • 🎯 Smart Dependency Updates
  • • 🚀 Intelligent CLI Upgrades
  • • 💾 .package-installer-cli Folder
  • • 📈 Usage Tracking
  • • ⚡ Performance Insights

Installation

Global Installation

Using npm
bash
# Using npm (recommended)
npm install -g @0xshariq/package-installer

# Run without installing (npx)
npx @0xshariq/package-installer create my-app
Using pnpm (recommended)
bash
# Using pnpm
pnpm add -g @0xshariq/package-installer

# Run without installing
pnpm dlx @0xshariq/package-installer create my-app
Using yarn
bash
# Using yarn
yarn global add @0xshariq/package-installer
PyPI (Python)
bash
# Using pip
pip install package-installer-cli

# Using pip3
pip3 install package-installer-cli

# Install for current user
pip install --user package-installer-cli

# Upgrade to latest version
pip install --upgrade package-installer-cli
Crates (Rust)
bash
# Using cargo
cargo install package-installer-cli

# Install from git (latest)
cargo install --git https://github.com/0xshariq/rust_package_installer_cli

# Update to latest version
cargo install package-installer-cli --force
RubyGems
bash
# Using gem
gem install package-installer-cli

# Install for current user
gem install --user-install package-installer-cli

# Update to latest version
gem update package-installer-cli
Go (from GitHub)
bash
# Using go install
go install github.com/0xshariq/go_package_installer_cli@latest

# Clone and build from source
git clone https://github.com/0xshariq/go_package_installer_cli.git
cd go_package_installer_cli
go build -o pi
sudo mv pi /usr/local/bin/
Homebrew (macOS)
bash
# Add the tap
brew tap 0xshariq/package-installer-cli

# Install package-installer-cli
brew install package-installer-cli

# Or install directly from formula URL
brew install https://raw.githubusercontent.com/0xshariq/homebrew-package-installer-cli/main/Formula/package-installer-cli.rb
Docker
bash
# Pull latest image
docker pull 0xshariq/package-installer-cli:latest

# Run interactively
docker run -it --rm   -v "$(pwd)":/home/pi/projects   0xshariq/package-installer-cli:latest create my-app

Quick Start

pi create

Create new project from templates

bash
pi create [name]
pi analyze

Enhanced project analytics dashboard

bash
pi analyze [--detailed]
pi update

Update project dependencies

bash
pi update [--latest]
pi upgrade-cli

Upgrade CLI to latest version

bash
pi upgrade-cli
pi deploy

Deploy the application to various platform

bash
pi deploy --platform [platform]
pi add

Add any features to the project

bash
pi add [feature]
pi doctor

Check the health of the project

bash
pi doctor
pi env

Manage environment variables

bash
pi env

First Steps

Getting started with Package Installer CLI
bash
# Check installation
pi --version

# Get help
pi --help

# Create your first project
pi create my-awesome-app

# Analyze any existing project
cd existing-project && pi analyze

New Features in v3.0.0

📊 Enhanced Analytics Dashboard

Real-time usage analytics with detailed insights

  • • Project creation statistics
  • • Performance metrics
  • • Usage patterns analysis
🎯 Smart Dependency Updates

Project-specific dependency management

  • • Multi-language support
  • • Intelligent version detection
  • • Breaking change warnings
🚀 Intelligent CLI Upgrades

Separate upgrade system with migration

  • • Breaking change detection
  • • Automatic configuration migration
  • • Rollback support
⚡ Performance Insights

Productivity scoring and optimization

  • • Cache performance metrics
  • • Speed improvements tracking
  • • Resource usage analysis

Commands Overview

CommandDescriptionUsage
pi createCreate new project from templatespi create [name]
pi analyzeEnhanced project analytics dashboardpi analyze [--detailed]
pi updateUpdate project dependenciespi update [--latest]
pi addAdd features to existing projectspi add [feature]
pi doctorDiagnose and fix project issuespi doctor
pi upgrade-cliUpgrade CLI to latest versionpi upgrade-cli

Global Options

text
--version, -v    Display CLI version
--help, -h       Show help information
--verbose        Enable detailed logging
--no-cache       Disable caching for a command

auth (Authentication & 2FA)

Manage CLI authentication with secure local user accounts. 2FA (Google Authenticator / TOTP) is required for unlimited CLI access. Unverified users are limited to 3 non-auth commands before verification is required.

Auth subcommands & flags
bash
pi auth login                # interactive login
pi auth register --email user@example.com --password hunter2  # non-interactive register
pi auth verify               # enable and verify 2FA (required for unlimited access)
pi auth logout               # logout
pi auth status               # show login status
pi auth whoami               # print current user email

# 2FA rules (verbatim):
# - 2FA (Google Authenticator or compatible app) is required for unlimited CLI access.
# - Unverified users can only use 3 commands (excluding 'auth verify', 'auth logout', and help/version) before verification is required.
# - After 3 commands, unverified users are blocked from all other commands until they complete 2FA with 'pi auth verify'.

create

bash
# Syntax
pi create [project-name] [options]

# Examples
pi create my-awesome-app           # interactive
pi create ./projects/my-app        # create in specific directory
pi create my-app --template=nextjs-ts-tailwind

# Common options (verbatim):
--template            Pre-select template (e.g. --template=react-vite-ts)
--no-install          Skip dependency installation
--no-git              Skip git initialization
--package-manager     Force package manager (e.g. --package-manager=pnpm)

analyze

bash
# Syntax
pi analyze [options]

# Examples
pi analyze                    # analyze current directory
pi analyze /path/to/project   # analyze specific project
pi analyze --no-cache         # force refresh without cache

# Options (verbatim):
--detailed    Show detailed analysis
--no-cache    Don't use cached analysis
--export <method>  Export analysis to json/xml/yaml

update

bash
# Syntax
pi update [package-names...] [options]

# Examples
pi update lodash react typescript
pi update --dev eslint prettier
pi update --all                # update all packages
pi update --global typescript nodemon

# Options (verbatim):
--all      Update all packages
--dev      Update only dev dependencies
--global   Update global packages
--dry-run  Preview changes only
--force    Force update (skip confirmation)

add

bash
# Syntax
pi add [feature-name] [options]

# Examples
pi add auth       # add authentication providers
pi add docker     # add docker configuration
pi add ui         # add UI libraries (Tailwind, shadcn/ui, etc.)

# Feature flags (verbatim examples):
--provider=<name>   Select provider for a feature (e.g. --provider=clerk)
--type=<type>       Select type for DB or storage (e.g. --type=postgresql)

check / doctor / env

bash
# check
pi check [package-name] [options]
--security  Security-focused scan
--performance  Performance analysis
--detailed  Detailed diagnostics

# doctor
pi doctor [options]
--fix      Automatically fix detected issues
--node     Check Node.js/npm only
--deps     Check project dependencies only

# env
pi env [options]
--check     Check development tools and versions
--generate  Generate .env template for project
--validate  Validate existing .env file
--export    Export environment info to file

cache / clean / clone / email / upgrade-cli

bash
# cache
pi cache [subcommand] [options]
pi cache clear all
pi cache clear projects --confirm
pi cache stats

# clean
pi clean [target] [options]
pi clean deps
pi clean build
pi clean cache

# clone
pi clone <repo> [directory] [options]
--offline  Use cached templates
--no-deps  Skip dependency installation
--no-git   Skip git initialization

# email
pi email [category] [options]
pi email --setup
pi email --test

# upgrade-cli
pi upgrade-cli [options]
--check
--beta
--force
--rollback

deploy (Planned)

bash
# Planned examples
pi deploy vercel
pi deploy netlify --domain=myapp.com
pi deploy aws --region=us-east-1

Templates & Features (context)

text
# Template example (Next.js App Router)
pi create my-nextjs-app --template=nextjs-app-router-ts-tailwind

# Feature example
pi add auth --provider=clerk
pi add analytics --provider=posthog

Supported Project Types

Language/FrameworkTemplatesPackage Managers
JavaScript/TypeScriptReact, Next.js, Express, Angular, Vuenpm, yarn, pnpm
PythonDjango, Flask, FastAPIpip, poetry
RustBasic, Advanced, Webcargo
GoCLI, Web, APIgo mod
RubyRails, Sinatrabundler
Frontend Frameworks
  • • React (Vite)
  • • Next.js (App Router)
  • • Vue.js 3
  • • Angular
  • • Svelte (Coming Soon)
Backend APIs
  • • Express.js
  • • NestJS
  • • FastAPI
  • • Django
  • • Go Web APIs
Fullstack Solutions
  • • React + Express
  • • React + NestJS
  • • Next.js Fullstack
  • • Vue + Express
  • • All with shadcn/ui

Configuration

Global Configuration

Configuration is stored in ~/.package-installer-cli/config.json

Global configuration example
json
{
  "preferences": {
    "packageManager": "pnpm",
    "language": "typescript",
    "framework": "react",
    "styling": "tailwindcss"
  },
  "cache": {
    "enabled": true,
    "maxSize": "500MB",
    "autoCleanup": true
  },
  "analytics": {
    "enabled": true,
    "anonymous": true
  }
}

Environment Variables

VariableDescriptionDefault
PKG_CLI_CACHE_DIRCustom cache directory~/.package-installer-cli/
PKG_CLI_DISABLE_CACHEDisable all cachingfalse
PKG_CLI_SILENTSuppress outputfalse

Troubleshooting

Template Creation Fails
bash
# Check permissions and space
ls -la /path/to/directory
df -h

# Try alternative directory
pi create ~/Desktop/my-project

# Clear cache and retry
pi cache clear templates
Package Installation Errors
bash
# Clear package manager cache
npm cache clean --force
pnpm store prune

# Try different package manager
pi create --package-manager=npm