create-janus
v0.1.7
Published
AI-native AWS scaffold CLI - The gateway to your next project
Downloads
30
Maintainers
Readme
Janus
The gateway to your next project
AWS scaffold CLI that creates production-ready CDK + React projects in one command.
Quick Start
# Interactive mode
npx create-janus my-app
# Non-interactive scaffold only
npx create-janus my-app --description="My SaaS" -y
# Full E2E: scaffold + GitHub repo + CI/CD pipeline deployment
npx create-janus my-app \
--description="My SaaS" \
--github \
--connection-arn="arn:aws:codeconnections:region:account:connection/id" \
--deploy \
-yWhat You Get
my-app/
├── bin/app.ts # CDK entry point
├── lib/
│ ├── infra/ # AWS infrastructure
│ │ ├── client/ # S3 + CloudFront
│ │ ├── config/ # Stage configuration
│ │ └── pipeline/ # CI/CD pipeline
│ └── ui/ # React + Vite
├── scripts/ # Deploy helpers
├── __tests__/ # Vitest tests
├── package.json
└── README.mdCLI Options
npx create-janus <project-name> [options]
Project Configuration:
--description <text> Project description
--region <region> AWS region (default: eu-central-1)
GitHub Integration:
--github Create GitHub repo and push
Pipeline Deployment:
--connection-arn <arn> CodeStar connection ARN for CI/CD
--deploy Deploy pipeline to AWS
Automation:
-y, --yes Skip all promptsDeployment
Prerequisites
- AWS CLI v2 configured with credentials
- CDK bootstrapped:
npx cdk bootstrap aws://ACCOUNT/REGION - GitHub CLI authenticated:
gh auth login - CodeStar Connection to GitHub (AWS Console → CodePipeline → Connections)
E2E Deployment (Recommended)
One command does everything: scaffold, create GitHub repo, bootstrap SSM, deploy CI/CD pipeline.
npx create-janus my-app \
--description="My project" \
--github \
--connection-arn="arn:aws:codeconnections:region:account:connection/id" \
--deploy \
-yWhat happens:
- Scaffold project structure
- Install dependencies
- Create GitHub repo + push initial commit
- Bootstrap SSM parameters
- Build project (TypeScript + UI)
- Deploy CI/CD pipeline to AWS
- Pipeline auto-triggers on future pushes
Split Workflow (Cloud Agents)
For environments without AWS credentials (e.g., cloud Cursor agents):
# Step 1: Agent runs (no AWS needed)
npx create-janus my-app --description="My project" --github -y
# Step 2: Deploy locally
cd my-app
npm install && npm run ui:install
cp .env.example .env # Set CONNECTION_ARN
./scripts/deploy.sh MyAppPipelineManual Deployment
cd my-app
npm install && npm run ui:install
gh repo create --private --source=. --push
cp .env.example .env
./scripts/deploy.shStack Features
- AWS CDK v2 - Infrastructure as code
- React 18 + Vite - Modern frontend
- S3 + CloudFront - Static hosting with OAC
- CodePipeline - CI/CD on push
- Vitest - Testing
- ESLint - Linting
- Husky - Pre-commit hooks
Quality Gates
Pre-commit: lint-staged (ESLint)
Pipeline: npm ci → lint → build → ui:build → test → deployDevelopment
git clone https://github.com/ilya-dyaglev/janus
cd janus && npm install
npm run dev my-test-app # Test locally
npm run build # Build
npm test # TestContributing
Provided as-is. PRs welcome but not guaranteed to be reviewed or merged.
License
MIT
