| title | description |
|---|---|
Launchpad CLI |
The essential developer onboarding tool for any organization - your starting point into the organization and beyond |
Welcome to Launchpad - the comprehensive command-line interface designed to be every developer's starting point into the any organization organization and beyond.
Launchpad CLI is the essential onboarding tool that streamlines the developer experience at any organization. Whether you're a new team member joining the organization or an existing developer exploring new projects, Launchpad provides you with the tools, resources, and guidance needed to get up and running quickly.
Launchpad is more than just a CLI tool - it's your gateway to the any organization developer ecosystem. It serves as:
- Your First Step: The initial tool every developer uses when joining any organization
- Project Bootstrap: Quick setup and initialization of new projects
- Resource Hub: Access to documentation, best practices, and organizational standards
- Development Environment: Streamlined setup of local development environments
- Knowledge Base: Centralized access to team knowledge and processes
At any organization, we believe that great developer experiences lead to great products. Launchpad embodies this philosophy by:
- Reducing Time to Productivity: Get new developers contributing to projects faster
- Ensuring Consistency: Standardized setup processes across all teams using pnpm and Turbo
- Sharing Knowledge: Centralized access to tribal knowledge and best practices
- Supporting Growth: Resources for both new developers and experienced team members exploring new areas
- Automated development environment setup
- Repository access and cloning
- Dependency management and installation with pnpm
- Configuration of essential tools and services
- Turbo repo workspace setup
- Access to organizational documentation
- Best practice guidelines
- Code standards and conventions
- Team contact information and escalation paths
- Project creation and scaffolding
- Template selection and customization
- Integration with existing any organization infrastructure
- Automated CI/CD setup
- Turbo repo integration for monorepo projects
- Environment configuration
- Service discovery and connection
- Testing framework setup
- Deployment pipeline integration
# Clone the repository and install locally
git clone <repository-url>
cd launchpad
pnpm install
pnpm run install:localThis will build the CLI and install it globally so you can use the launchpad command anywhere.
# Installation using pnpm (our preferred package manager)
pnpm install -g @any organization/launchpad-cliFirst, set up your development environment (this installs essential tools like Homebrew, Git, Node.js via Volta, PNPM, and GitHub CLI):
# Set up essential development tools (recommended first step)
launchpad setup essential
# Or set up everything at once
launchpad setup all
# Check what's installed
launchpad setup statusNext, download or configure the necessary configuration files:
# Option 1: Download existing configuration from a shared source
# Note: You'll need a GitHub personal access token for private gists/repos
launchpad admin config download --gist-id YOUR_GIST_ID --token YOUR_GITHUB_TOKEN
# Option 2: Set up configuration providers for your organization
launchpad admin config setup
launchpad admin config providers
# Option 3: Check what configuration files are available
launchpad admin infoGitHub Token Setup:
- Go to GitHub Settings > Personal Access Tokens
- Create a new token with
gistscope (for Gist access) orreposcope (for repository access) - Use the token in download/upload commands or save it in your provider configuration
Finally, initialize your developer workspace:
# Initialize your developer workspace
launchpad init
# Set up your development environment
launchpad setup all
# Explore available commands
launchpad help
# Start working with your team's repositories
launchpad app dev # Interactive selection of repositories
launchpad app dev --all # Start all repositories
launchpad app dev -r repo1 repo2 # Start specific repositoriesLaunchpad uses a centralized configuration system for teams, setup components, and documentation. You can:
# Download configuration from GitHub Gist (requires token for private gists)
launchpad admin config download --gist-id abc123def456 --token YOUR_GITHUB_TOKEN
# Upload your local configuration to share with others (requires token)
launchpad admin config upload --token YOUR_GITHUB_TOKEN
# Backup your configuration locally (no token needed)
launchpad admin config backup
# Restore from a backup (no token needed)
launchpad admin config restore
# Manage sync providers (save tokens permanently to avoid repeated entry)
launchpad admin config providersPro Tip: Configure your sync providers once with launchpad admin config providers to save your tokens permanently. This way you won't need to provide --token on every command.
Launchpad includes a powerful application management system that allows you to run commands across multiple repositories with ease. This is perfect for managing microservices, monorepos, or any multi-repository development workflow.
# Start all repositories in development mode
launchpad app dev --all
# Start specific repositories
launchpad app dev -r aurora mmb
# Check status of running processes
launchpad app status
# View logs from a specific repository
launchpad app logs -r aurora --follow
# Stop all running processes
launchpad app stop --alllaunchpad app dev- Start development mode for repositorieslaunchpad app start- Start development serverslaunchpad app build- Build repositories (supports dev/prod environments)launchpad app test- Run tests (supports watch mode)launchpad app lint- Run linting (supports auto-fix)launchpad app status- Show status of running processeslaunchpad app logs- View logs from running processeslaunchpad app stop- Stop running processes gracefullylaunchpad app down- Stop and remove Docker Compose containers (use--volumesto remove volumes)launchpad app kill- Force kill all processes
For quick access, use these root-level scripts:
pnpm app:dev # Start all repos in dev mode
pnpm app:start # Start all repos
pnpm app:build # Build all repos
pnpm app:test # Test all repos
pnpm app:status # Show process status
pnpm app:stop # Stop all processes
pnpm app:down # Stop and remove Docker containers
pnpm app:kill # Kill all processes- Process Management: Track, monitor, and control running processes
- Log Management: Centralized logging with real-time viewing
- Parallel/Sequential Execution: Choose execution mode based on needs
- Interactive Mode: Select repositories when none specified
- Environment Support: Different commands for dev/prod environments
- Error Handling: Graceful error handling and recovery
- Docker Compose Support: Automatic detection and proper handling of containerized applications
Launchpad automatically detects Docker Compose applications and uses the appropriate commands:
- Automatic Detection: Looks for
docker-compose.yml,compose.yml, and other common compose file names - NPM Script Detection: Detects when npm scripts use Docker Compose commands (e.g.,
"dev": "docker-compose up") - Smart Commands: Uses
docker compose upfor dev/start,docker compose stopfor graceful shutdown - Proper Cleanup: The
downcommand removes containers, networks, and optionally volumes - Container Logs: Shows Docker container logs instead of process logs for compose applications
# Start Docker Compose services in development mode
launchpad app dev -r my-docker-app
# Stop Docker Compose services gracefully
launchpad app stop -r my-docker-app
# Stop and remove containers, networks (use for cleanup)
launchpad app down -r my-docker-app
# Stop and remove everything including volumes
launchpad app down -r my-docker-app --volumes
# View container logs
launchpad app logs -r my-docker-app --followLaunchpad also detects when your npm scripts use Docker Compose commands:
{
"scripts": {
"dev": "docker-compose up --build",
"start": "docker compose -f docker-compose.prod.yml up -d",
"test": "docker-compose run --rm app npm test"
}
}When you run launchpad app dev, it will:
- Execute the npm script as usual
- Detect that it uses Docker Compose
- Track the Docker services that are started
- Use proper Docker Compose commands when stopping (instead of just killing the npm process)
For detailed documentation, see APP_COMMANDS.md.
Launchpad automates the installation of all development tools you need for any organization.
# Set up everything you need
launchpad setup all
# Essential tools only (recommended for quick start)
launchpad setup essential
# Check what's installed
launchpad setup statusFor the complete setup command reference, see SETUP_COMMANDS.md.
For contributors working on the CLI itself:
# Run directly from source (fastest for development)
pnpm cli --help
pnpm cli init
# Watch mode - auto-restart on changes
pnpm dev:cli
# Build and test production version
pnpm cli:build
pnpm cli:built --help# Clone, build, and install globally
git clone <repository-url>
cd launchpad
pnpm install
pnpm run install:localNow you can use launchpad anywhere on your system.
For rapid iteration while developing the CLI:
# Run directly from source (no build needed)
pnpm cli --help
pnpm cli init
# Or watch mode (auto-restart on changes)
pnpm dev:clipnpm run uninstall:localLaunchpad represents our commitment to developer experience excellence. As the organization grows and evolves, Launchpad grows with it, continuously incorporating new tools, processes, and knowledge to ensure every developer has what they need to succeed.