A powerful CLI tool for creating and managing enterprise-grade CI/CD pipelines on AWS with intelligent automation, built with TypeScript and AWS CDK v2.
- π― Template-based Generation: Multiple pre-built templates for different project types
- π Interactive CLI: User-friendly prompts and command-line interface
- βοΈ AWS Integration: Built-in AWS CDK support for infrastructure deployment
- π Pipeline Management: Status monitoring, logs, and notifications
- π οΈ TypeScript Support: Full TypeScript implementation with type safety
- π§ͺ Testing Ready: Jest configuration for comprehensive testing
# Install globally via npm
npm install -g pipeline-creator-cli
# Or run directly with npx
npx pipeline-creator-cli --help
# Initialize a new pipeline project
pipeline-node init my-app
# Initialize with specific template
pipeline-node init my-api --template nodejs-api
# List available templates
pipeline-node templates --details
# Generate pipeline files
pipeline-node generate
# Check project status
pipeline-node status
# Deploy to AWS (coming soon)
pipeline-node deploy --environment prod
Template | Description | Use Cases |
---|---|---|
python-api | Python API with Flask/FastAPI | REST APIs, Microservices, Web applications |
nodejs-api | Node.js API with Express | REST APIs, GraphQL APIs, Real-time applications |
react-frontend | React frontend application | SPAs, Web dashboards, PWAs |
data-processing | Data processing and analytics | ETL pipelines, Data analysis, Batch processing |
iac | Infrastructure as Code with Terraform | Infrastructure deployment, Resource management |
Initialize a new pipeline project with interactive template selection.
Options:
-t, --template <type>
- Pipeline template type-f, --force
- Overwrite existing files
Generate pipeline files from templates based on project configuration.
Options:
-t, --template <type>
- Specific template to generate-o, --output <path>
- Output directory (default: ./pipeline)
List and manage available pipeline templates.
Options:
-d, --details
- Show detailed template information
Show current pipeline project status and configuration.
Deploy pipeline to AWS (feature in development).
Options:
-e, --environment <env>
- Deployment environment (default: dev)-r, --region <region>
- AWS region (default: us-east-1)
View pipeline logs from CloudWatch (feature in development).
Options:
-f, --follow
- Follow log output-n, --lines <number>
- Number of lines to show (default: 50)
Manage pipeline notifications (feature in development).
Options:
-e, --enable
- Enable notifications-d, --disable
- Disable notifications-c, --channel <channel>
- Notification channel (email, slack, teams)
After running pipeline-node init
and pipeline-node generate
, your project will have:
my-project/
βββ pipeline.config.json # Project configuration
βββ pipeline/ # Generated pipeline files
β βββ buildspec.yml # AWS CodeBuild specification
β βββ Dockerfile # Container configuration
β βββ package.json # Dependencies (Node.js projects)
βββ ... (your application code)
- Files:
buildspec.yml
,Dockerfile
,requirements.txt
- Features: Flask/FastAPI ready, ECR integration, Gunicorn server
- Best for: REST APIs, microservices, web applications
- Files:
buildspec.yml
,Dockerfile
,package.json
- Features: Express.js setup, multi-stage Docker build, npm integration
- Best for: REST APIs, GraphQL APIs, real-time applications
- Files:
buildspec.yml
,Dockerfile
- Features: Nginx serving, optimized build process, S3 sync ready
- Best for: Single Page Applications, dashboards, Progressive Web Apps
- Files:
buildspec.yml
,Dockerfile
,requirements.txt
- Features: Python data stack, batch processing ready, ETL optimized
- Best for: ETL pipelines, data analysis, batch processing jobs
- Files:
buildspec.yml
,main.tf
- Features: Terraform configuration, AWS provider setup, modular design
- Best for: Infrastructure deployment, resource management, DevOps automation
- Node.js 18+ and npm
- TypeScript 5.x
- AWS CLI configured (for deployment features)
# Clone and install dependencies
git clone <repo-url>
cd creator_n
npm install
# Build the project
npm run build
# Run in development mode
npm run dev -- --help
# Run tests
npm test
# Run tests in watch mode
npm run test:watch
# Clean and build
npm run clean && npm run build
# Test CLI locally
node dist/cli.js --help
# Test with TypeScript directly
npm run dev -- init test-project --template nodejs-api
The project uses Jest for testing with TypeScript support:
# Run all tests
npm test
# Run tests in watch mode
npm run test:watch
# Run tests with coverage
npm run test:coverage
# Build for production
npm run build
# Publish to npm
npm publish
# Or publish to npm test registry
npm publish --registry https://registry.npmjs.org/
- Fork the repository
- Create a 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
This project is licensed under the MIT License - see the LICENSE file for details.
This Node.js edition provides the same core functionality as the Python version but with:
- TypeScript: Full type safety and better IDE support
- Modern JavaScript: ES2020+ features and module system
- npm Ecosystem: Access to the vast npm package repository
- Jest Testing: Modern testing framework with excellent TypeScript integration
- Commander.js: Powerful CLI framework with built-in help and validation
Both versions generate the same AWS-compatible pipeline files and provide identical functionality for CI/CD pipeline creation and management.
- Pipeline Creator CLI (Python) - The original Python implementation
- AWS CDK - AWS Cloud Development Kit
- AWS CodeBuild - Fully managed build service
Made with β€οΈ for enterprise CI/CD automation