@tappify/cli
v1.0.1
Published
Tappify CLI - Command line interface for managing deployments and more
Maintainers
Readme
Tap CLI
A command line interface for managing deployments and more, built with NestJS Commander.
Installation
Homebrew (macOS/Linux)
brew tap tappify-dev/homebrew-tap
brew install tappifyOr install directly from the formula:
brew install --build-from-source ./homebrew/tap.rbNPM (Alternative)
npm install -g @tappify/cliFrom Source
git clone https://github.com/tappify-dev/cli.git
cd tap/cli
pnpm install
pnpm build
npm linkUsage
# Show available commands
tap --help
# Create a deployment
tap create-deployment <project-id> --environment production --branch main
# Create a deployment (dry run)
tap create-deployment <project-id> --environment staging --dry-runCommands
create-deployment
Create a new deployment for a project.
tap create-deployment <project-id> [options]Arguments:
project-id: The ID of the project to deploy
Options:
-e, --environment <environment>: Target environment (e.g., production, staging)-b, --branch <branch>: Git branch to deploy-d, --dry-run: Run without making actual changes
Development
Setup
pnpm installRun in Development Mode
pnpm start:devBuild
pnpm buildTesting
# Unit tests
pnpm test
# Test coverage
pnpm testLinting and Formatting
# Lint code
pnpm lint
# Format code
pnpm formatCommitting
This project uses Commitizen and Commitlint for conventional commits:
# Use commitizen to create commits
pnpm commitProject Structure
cli/
├── src/
│ ├── domains/ # Feature domains
│ │ └── deployments/ # Deployment-related commands
│ │ ├── runners/ # Command runners
│ │ └── deployments.module.ts
│ ├── core/ # Core utilities
│ ├── app.module.ts # Main application module
│ └── main.ts # Application entry point
├── scripts/ # Build scripts
│ └── tap # CLI wrapper script
├── homebrew/ # Homebrew formula and docs
│ ├── tap.rb # Homebrew formula
│ └── HOMEBREW.md # Distribution guide
├── test/ # Tests
└── package.json
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feat/amazing-feature) - Commit your changes using commitizen (
pnpm commit) - Push to the branch (
git push origin feat/amazing-feature) - Open a Pull Request
License
MIT
