Self-service platform for creating production-ready services with GitHub integration - from template to live repo in 30 seconds
A CLI tool that automates the entire service creation workflow - from selecting a template to having your code live on GitHub. One command creates a production-ready service, initializes git, creates a GitHub repository, and pushes your code.
Before this tool:
1. Copy template (15 min)
2. Configure project (30 min)
3. Initialize git (5 min)
4. Create GitHub repo (5 min)
5. Push code (5 min)
Total: ~1 hour
With this tool:
platform create api my-service --github
Total: 30 seconds
- π¨ Multiple Templates - Node.js API, Microservices architectures
- π GitHub Integration - Auto-create repos and push code
- βοΈ AWS Deployment - One-command deployment to AWS with Terraform
- ποΈ Production-Ready - Docker, Kubernetes, CI/CD, AWS infrastructure included
- π― Interactive Mode - Guided prompts for easy setup
- β‘ Fast - From idea to GitHub in 30 seconds, deployed to AWS in 15 minutes
- π Secure - Token-based authentication, encrypted credential storage
- π° Cost-Aware - Built-in cost estimation and free tier tracking
- π§ Customizable - Modify templates to fit your needs
# Clone the repository
git clone https://github.com/GoddeyUwamari/platform-engineering-toolkit.git
cd platform-engineering-toolkit/cli
# Install dependencies
npm install
# Link globally
npm link
# Verify installation
platform --version# Create token at: https://github.com/settings/tokens
# Required scopes: repo (all)
platform github login
# Paste your token when prompted
# Verify authentication
platform github statusInteractive Mode (Recommended):
platform create
# Follow the prompts:
# 1. Select template
# 2. Enter service name
# 3. Choose GitHub integration
# 4. Set visibility (public/private)
# 5. Done!Direct Mode:
# Create API service
platform create api my-awesome-api
# Create with GitHub integration
platform create api my-service --github
# Create private repository
platform create api my-service --github --private
# With custom description
platform create api my-service --github -d "Production API for user management"# List all available templates
platform list
# Get detailed template info
platform info api
platform info microservicesOne command creates your service AND pushes it to GitHub:
platform create api my-service --githubWhat happens automatically:
β Creates service from template
β Initializes git repository
β Creates GitHub repository via API
β Commits all code
β Pushes to GitHub
β Returns live repo URL
π https://github.com/YourUsername/my-service
# Authentication
platform github login # Store GitHub token
platform github logout # Remove credentials
platform github status # Check authentication
# Repository management (run in service directory)
platform github create # Create repo for existing service
platform github push # Push current changes
platform github open # Open repo in browser# Public repository (default)
platform create api my-service --github
# Private repository
platform create api my-service --github --private
# With description
platform create api my-service --github -d "My awesome API"
# All options combined
platform create api my-service --github --private -d "Internal user service"Deploy your services to AWS with a single command using automated Terraform workflows.
- AWS Account - Sign up at https://aws.amazon.com (free tier available)
- Terraform - Install from https://terraform.io
- AWS Credentials - Create IAM user with access keys
1. Configure AWS:
platform aws configure
# Enter when prompted:
# - AWS Access Key ID
# - AWS Secret Access Key
# - Default Region (e.g., us-east-1)2. Deploy Service:
# Create service first
platform create api my-service
cd my-service
# Deploy to AWS (development environment)
platform deploy aws my-service
# Deployment will:
# β Validate Terraform configuration
# β Show cost estimate ($0 with free tier!)
# β Deploy VPC, EC2, RDS, security groups
# β Configure CloudWatch monitoring
# β Return application URL
#
# Estimated time: 10-15 minutes3. Manage Deployment:
# Check status
platform deploy status my-service
# View logs
platform deploy logs my-service
# Destroy resources
platform deploy destroy my-service# Credential Management
platform aws configure # Set up AWS credentials
platform aws status # Check AWS connection
platform aws costs # View cost estimates
# Deployment Management
platform deploy aws <service> # Deploy to AWS
platform deploy aws <service> --env production # Deploy to production
platform deploy status <service> # Check deployment status
platform deploy logs <service> # View CloudWatch logs
platform deploy destroy <service> # Destroy AWS resources
platform deploy estimate <service> # Estimate deployment costsDeploy to different environments with appropriate instance sizing:
| Environment | EC2 Instance | RDS Instance | Monthly Cost |
|---|---|---|---|
| development | t2.micro | db.t3.micro | $0 (free tier) |
| staging | t2.small | db.t3.small | ~$49/month |
| production | t3.medium | db.t3.small | ~$94/month |
# Development (free tier eligible)
platform deploy aws my-service --env development
# Staging
platform deploy aws my-service --env staging
# Production
platform deploy aws my-service --env productionEach deployment automatically creates:
- VPC - Isolated virtual network
- Subnets - Public (EC2) and private (RDS) subnets across 2 AZs
- EC2 Instance - Application server with auto-assigned public IP
- RDS PostgreSQL - Managed database with automated backups
- Security Groups - Configured firewall rules
- Internet Gateway - External connectivity
- Route Tables - Network routing configuration
- CloudWatch - Metrics, logs, and alarms
Free Tier Benefits (First 12 Months):
- β 750 hours/month EC2 t2.micro
- β 750 hours/month RDS db.t3.micro
- β 30 GB storage (EBS + RDS combined)
- β 15 GB data transfer
Best Practices:
# Always estimate first
platform deploy estimate my-service
# Check current costs
platform aws costs
# Destroy when not in use
platform deploy destroy my-service# 1. Configure AWS (one-time)
platform aws configure
# 2. Create and deploy service
platform create api billing-api --github
cd billing-api
platform deploy aws billing-api
# 3. Check deployment
platform deploy status billing-api
# Output:
# β
EC2: i-0x1234 (t2.micro, running)
# β
RDS: billing-api-db (db.t3.micro, available)
# URL: http://54.123.45.67:3000
# 4. View logs
platform deploy logs billing-api
# 5. When done testing
platform deploy destroy billing-api
# Estimated monthly savings: $33/monthFor detailed guides, see:
- AWS Deployment Guide - Complete deployment walkthrough
- AWS Setup Guide - AWS account and IAM configuration
- Cost Optimization - Save money on AWS
- Troubleshooting - Common issues and solutions
Production-ready REST API with:
- β TypeScript + Express.js
- β PostgreSQL + TypeORM
- β Redis caching
- β Docker + Docker Compose
- β Kubernetes manifests
- β Complete CI/CD pipeline (GitHub Actions)
- β Health checks & readiness probes
- β Terraform AWS deployment
- β Security middleware (Helmet, CORS)
- β Request validation
- β Comprehensive error handling
Tech Stack:
- Node.js 20 LTS
- TypeScript 5.x
- Express.js 4.x
- PostgreSQL 15
- Redis 7
- Docker
- Kubernetes
Perfect for: REST APIs, backend services, microservices, monolithic applications
Quick Start:
platform create api my-api --github
cd my-api
npm install
npm run devEnterprise SaaS platform based on CloudBill - a complete multi-tenant billing system:
5 Production Microservices:
- π Auth Service - JWT authentication, session management
- π³ Billing Service - Subscriptions, invoices, usage tracking
- π° Payment Service - Stripe integration, refunds
- π§ Notification Service - Email, SMS, webhooks
- πͺ API Gateway - Routing, rate limiting
Architecture Highlights:
- β Multi-tenant data isolation
- β Event-driven communication
- β Shared utilities library
- β Prometheus metrics collection
- β Grafana dashboards (6 dashboards, 18 alerts)
- β 213 automated tests (100% passing)
- β Kubernetes deployment with Kustomize
- β Complete observability stack
Perfect for: SaaS platforms, complex distributed systems, learning microservices architecture
Quick Start:
platform create microservices my-saas --github
cd my-saas
docker-compose up -dplatform-engineering-toolkit/
βββ cli/ # CLI tool
β βββ index.js # Main CLI with GitHub integration
β βββ package.json # Dependencies
β βββ node_modules/
βββ templates/ # Service templates
β βββ node-api-template/ # Production API
β βββ microservices-template/ # CloudBill SaaS
βββ docs/ # Documentation
βββ portal/ # Web UI (planned)
βββ api/ # Backend API (planned)
- π Rapid Prototyping - Test ideas in minutes
- π Learning - Study production-grade code
- πΌ Portfolio Projects - Start with solid foundation
- π― Best Practices - Learn by example
- π’ Standardization - Consistent service architecture
- β‘ Faster Onboarding - New devs productive day 1
- π Enforced Standards - Security and quality baked in
- π Platform Engineering - Self-service infrastructure
- π° Cost Reduction - Less time on boilerplate
- π’ Faster Shipping - Minutes vs days to production
- π― Focus on Features - Not infrastructure setup
- π Scale Efficiently - Add services without chaos
- Runtime: Node.js 20+
- CLI Framework: Commander.js
- Interactive Prompts: Inquirer
- GitHub API: Octokit
- AWS SDK: @aws-sdk/client-* (EC2, RDS, STS, CloudWatch)
- Git Operations: Simple-Git
- Configuration: Conf
- Terminal UI: Chalk, Ora
- Process Management: Child Process (Terraform automation)
- Languages: TypeScript, Node.js
- Frameworks: Express.js
- Databases: PostgreSQL, Redis
- Containerization: Docker, Docker Compose
- Orchestration: Kubernetes, Kustomize
- CI/CD: GitHub Actions
- Infrastructure: Terraform (AWS)
- Monitoring: Prometheus, Grafana, CloudWatch
- Testing: Jest
- Security: Helmet, CORS, JWT
- β Token Storage - Secure local config file
- β No Passwords in Code - Token-based auth only
- β Scoped Access - Minimal GitHub permissions
- β Secure Templates - Security middleware included
- β Private Repos - Support for private repositories
Configuration stored at: ~/.config/platform-toolkit/config.json
By using and studying this toolkit, you'll learn:
Platform Engineering:
- Self-service infrastructure
- Golden path templates
- Developer experience design
- Internal tooling
DevOps:
- CI/CD automation
- Infrastructure as Code
- Container orchestration
- GitOps workflows
Architecture:
- Microservices patterns
- Multi-tenant systems
- Event-driven design
- API Gateway patterns
Cloud Native:
- Docker containerization
- Kubernetes deployment
- Cloud provisioning (AWS)
- Observability stack
- Template library
- Interactive mode
- Input validation
- Professional UX
- Authentication system
- Repository creation
- Automatic code push
- Public/private options
- One-command AWS deployment
- Terraform automation
- Multi-environment support (dev/staging/prod)
- Cost estimation and tracking
- CloudWatch monitoring integration
- Deployment state management
- Comprehensive documentation
- Service catalog
- Deployment tracking
- Status monitoring
- Metadata management
- Browser-based UI
- Visual service creation
- Real-time metrics
- Team collaboration
- Templates: 2 production-ready
- Microservices: 5 fully functional
- Tests: 213 automated (100% passing)
- Commands: 15+ CLI commands
- Documentation: 8 comprehensive guides
- Cloud Platforms: AWS (with Terraform)
- Dependencies: Minimal, well-maintained
- Deployment Time: 30 seconds to GitHub, 15 minutes to AWS
This is a portfolio project, but feedback and suggestions are welcome!
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
MIT License - feel free to use this for learning or building your own platform!
Goddey Uwamari
- π’ Founder & CEO, WayUP Technology
- πΌ Senior Full-Stack & Platform Engineer
- π GitHub: @GoddeyUwamari
- π LinkedIn: Goddey Uwamari
If this project helped you, please:
- β Star the repository
- π¦ Share on social media
- π¬ Provide feedback
- π€ Contribute improvements
Built with inspiration from:
- Backstage (Spotify)
- Platform Engineering principles
- Modern DevOps practices
- Cloud-native architectures
Built with π to accelerate developer productivity and demonstrate platform engineering excellence
From template to GitHub in 30 seconds. That's the power of platform engineering. π



