TypeScript and Chill is an NPM package that automates the process of setting up a modern TypeScript development environment. Designed for developers working with AWS CDK, serverless applications, and microservices, this CLI tool ensures that every new project starts with a standardized and optimized development environment.
This tool eliminates the need for manually setting up ESLint, Prettier, Jest, AWS CDK, and CI/CD pipelines, saving time and reducing setup inconsistencies across projects.
✅ Interactive CLI Setup - Choose what to install based on project needs, or use the -y
flag for automatic setup
✅ Project Structure Creation - Automatically sets up directories for CDK and source code
✅ AWS CDK Initialization - Ensures an up-to-date cdk.json
configuration with the correct bin reference
✅ Linting & Formatting - Installs and configures Biome
✅ Testing - Configures Vitest for unit testing
✅ CI/CD Integration - Automatically sets up GitHub Actions for deployment
✅ Automatic TypeScript Compilation - Installs and configures esbuild
✅ Deployment Ready - Ensures TypeScript projects are ready for AWS deployments
To install and use this package in a new project:
npx typescript-and-chill
To automatically accept all default options and install everything:
npx typescript-and-chill -y
This will run the interactive CLI (or default to "yes" for all options if -y
is used), guiding you through the setup process.
When you run npx typescript-and-chill
, the CLI:
- Prompts for setup options (CDK, Jest, ESLint, etc.), unless
-y
is specified. - Installs dependencies (
aws-cdk
,biome
,vitest
,typescript
,esbuild
). - Creates project directories (
cdk/
,cdk/stacks/
,src/
). - Generates configuration files (
.biome.json
,cdk.json
). - Ensures
cdk.json
is updated - The correct bin file reference is automatically set. - Sets up CI/CD - Adds a GitHub Actions workflow for automated deployments.
- Ensures TypeScript Compilation - Installs
esbuild
for efficient TS-to-JS compilation.
After running the CLI, your project will have the following structure:
my-new-project/
├── bin/
│ ├── app.ts # CDK application entry file
├── cdk/
│ ├── stacks/ # CDK stacks directory
├── src/ # Application source code (Lambda functions, etc.)
├── .github/workflows/
│ ├── deploy.yml # CI/CD GitHub Actions workflow
├── package.json # Project dependencies and scripts
├── README.md # Documentation
├── tsconfig.json # TypeScript configuration
├── .biome.json # Biome configuration
├── cdk.json # AWS CDK configuration (correctly references bin/app.js)
└── .gitignore # Git ignore rules
You can choose which features to enable during setup:
- Install AWS CDK (
cdk init
is automatically run for accuracy). - Enable Biome for testing.
- Add CI/CD GitHub Actions workflow.
- Install TypeScript and
esbuild
for deployments. - Use
-y
to skip prompts and install everything automatically.
Unit tests ensure that all setup scripts function correctly:
npm test
This will run Vitest tests that validate the correct setup of Biome, Vitest, AWS CDK, CI/CD workflows, and TypeScript compilation.
Want to improve this package? Feel free to contribute by submitting a pull request!
MIT License