Documentation

Overview

Package Installer CLI (pi) is a modern, cross-platform CLI tool designed to scaffold web applications with beautiful styling, interactive prompts, and comprehensive framework support. Create production-ready projects in seconds with the ultimate developer experience.

Installation

Install Package Installer CLI globally or use it directly with npx. We recommend using npx for the latest version.

Using npx (Recommended)

Run directly with npx
bash
npx package-installer-cli

Global Installation

Install globally
bash
npm install -g package-installer-cli

After global installation, you can use: pi or package-installer

Usage

The CLI provides an intuitive interface for scaffolding web applications. Here are the basic commands.

Basic Usage

Start the interactive scaffolder
bash
pi

Available Commands

Basic Scaffolding

Create a new project interactively

bash
pi
Named Project

Create project with specific name

bash
pi my-awesome-app
Current Directory

Use current directory name

bash
pi .
Full Command

Use full command name

bash
package-installer my-react-app

Supported Frameworks

Package Installer CLI supports a wide range of frameworks and technologies for building modern web applications.

Next.js
Full-Stack

React framework with SSR, SSG, and API routes

React
Frontend

JavaScript library for building user interfaces

Vue.js
Frontend

Progressive JavaScript framework

Angular
Frontend

Platform for building mobile and desktop web applications

Express.js
Backend

Fast, unopinionated web framework for Node.js

Remix
Frontend

Full stack web framework focused on web standards

NestJS
Backend

Progressive Node.js framework for building scalable applications

Rust
Backend

Systems programming language with memory safety

Templates

Each framework comes with multiple template options to suit different project requirements.

Template Types

Basic Templates

Simple, clean structure for getting started

Advanced Templates

Full-featured, production-ready setups

Combination Templates

Pre-configured full-stack setups

UI Library Integration

Templates with Shadcn/ui, Material-UI

Example: React + Express + Shadcn

Combination template selection
bash
šŸ“‹ Choose your template:
āÆ react-basic-express-shadcn-template (Pre-configured setup)
  react-advance-express-shadcn-template (Pre-configured setup)

šŸ“‹ Template includes:
  āœ… Shadcn/ui components
  āœ… Express.js backend
  āœ… React.js frontend
  šŸ’” All configurations are pre-configured for optimal setup!

Examples

Common use cases and examples to help you get started quickly.

Next.js Project

Creating a Next.js project
bash
# Create a Next.js project
pi my-next-app

# Choose framework: Next.js
# Choose language: TypeScript
# Choose template: Basic with Shadcn/ui
# Choose styling: Tailwind CSS

Full-Stack Application

Creating a full-stack application
bash
# Create a full-stack app
pi my-fullstack-app

# Choose combination template
# React + Express + Shadcn/ui
# TypeScript throughout
# Auto dependency installation

Rust Backend

Creating a Rust backend
bash
# Create a Rust project
pi my-rust-service

# Choose framework: Rust
# Choose template: Advanced
# Cargo commands will be shown

Development

Information for developers who want to contribute to Package Installer CLI.

Local Development

Setting up development environment
bash
# Clone the repository
git clone https://github.com/0xshariq/package-installer-cli.git
cd package-installer-cli

# Install dependencies
npm install

# Build the project
npm run build

# Run locally
node dist/index.js

Project Structure

Project structure
bash
package-installer-cli/
ā”œā”€ā”€ src/
│   └── index.ts          # Main CLI logic with enhanced styling
ā”œā”€ā”€ templates/            # Template directories
│   ā”œā”€ā”€ nextjs/
│   ā”œā”€ā”€ reactjs/
│   ā”œā”€ā”€ vuejs/
│   ā”œā”€ā”€ angularjs/
│   ā”œā”€ā”€ expressjs/
│   ā”œā”€ā”€ remixjs/
│   ā”œā”€ā”€ nestjs/
│   ā”œā”€ā”€ rust/
│   └── reactjs-expressjs-shadcn/
ā”œā”€ā”€ template.json         # Framework configurations
ā”œā”€ā”€ dist/                 # Compiled JavaScript
└── package.json

Contributing

We welcome contributions! Here's how to get started with contributing to Package Installer CLI.

Getting Started

Contribution workflow
bash
# Fork the repository
# Create your feature branch
git checkout -b feature/amazing-feature

# Commit your changes
git commit -m 'Add amazing feature'

# Push to the branch
git push origin feature/amazing-feature

# Open a Pull Request

Adding New Frameworks

  1. Update template.json with framework configuration
  2. Create template directory in templates/
  3. Add framework theme in getFrameworkTheme()
  4. Update documentation in README.md
  5. Test thoroughly on different platforms

Quick Start Steps

Install CLI

Run 'npx package-installer-cli' in your terminal.

npx package-installer-cli

Choose Packages

Select and install npm packages interactively.

Enjoy!

Your project is ready with all dependencies installed.