Quick and Easy TypeScript Express Starter
npm install typescript-express-starter
- π°π· Korean
- πΊπΈ English
---
TypeScript Express Starter is an interactive CLI tool that generates production-ready TypeScript Express projects with your preferred stack configuration.
Instead of starting from scratch, this CLI provides a comprehensive project generator with multiple database integrations, development tools, and deployment configurations. Choose from 10+ templates and customize your development workflow in minutes.
- Interactive Setup: Choose database, ORM, linter, testing framework, and more
- Production Ready: Docker, PM2, NGINX configurations included
- Developer Experience: Hot reload, testing, linting, and formatting pre-configured
- Multiple Stacks: Support for 10+ database/ORM combinations
- π― Interactive Setup β Smart CLI with guided project configuration
- ποΈ Multiple Database Options β Prisma, Sequelize, TypeORM, Mongoose, Knex, and more
- π οΈ Development Tools β Choose from ESLint, Biome, Jest, Vitest, Docker, PM2
- π± Template Selection β 10+ pre-configured project templates
- β‘ Auto Configuration β Dependencies, scripts, and configs automatically setup
- π§ Smart Dependencies β Tool compatibility and requirement resolution
- π¦ Package Manager Agnostic β Works with npm, pnpm, or yarn
- π Zero Config Start β Generated projects work immediately
- π¨ Customizable β Add your own templates and development tools
``bashInstall globally
npm install -g typescript-express-starter
Generated Project Features:
- π Express server:
http://localhost:3000/
- π Auto-generated API docs: http://localhost:3000/api-docs
- π Hot reload with nodemon
- π§ͺ Testing setup includedπ Generated Project Structure
When you create a new project, the CLI generates this structure:
`bash
your-project/
βββ src/
β βββ config/ # Configuration files, environment settings
β βββ controllers/ # Request handling & response logic
β βββ dtos/ # Data Transfer Objects for request/response
β βββ entities/ # Database entities/models (if ORM selected)
β βββ exceptions/ # Custom exception classes
β βββ interfaces/ # TypeScript interfaces and type definitions
β βββ middlewares/ # Middlewares (logging, auth, error handling)
β βββ repositories/ # Database access logic
β βββ routes/ # API route definitions
β βββ services/ # Business logic
β βββ utils/ # Utility/helper functions
β βββ app.ts # Express app initialization
β βββ server.ts # Server entry point
βββ .env* # Environment variables (multiple stages)
βββ nodemon.json # Development server configuration
βββ package.json # Dependencies and scripts
βββ tsconfig.json # TypeScript configuration
βββ docker-compose.yml # Docker setup (if selected)
`π Development Tools Available
Choose from these categories during project setup:
| Category | Available Tools | Description |
| ------------- | ------------------------ | ----------------------------------------------- |
| Linter |
biome, eslint | Code formatting & linting (Biome is all-in-one) |
| Bundler | swc, tsup | Fast TypeScript compilation and bundling |
| Testing | jest, vitest | Unit & integration testing frameworks |
| Process | pm2 | Production process management |
| CI/CD | github | GitHub Actions workflows |
| Git Hooks | husky | Pre-commit hooks for quality control |
| Container | docker | Docker & docker-compose configuration |
| API Docs | swagger | OpenAPI/Swagger documentation |Smart Selection: The CLI automatically resolves tool dependencies and compatibility.
π§© Available Templates
Current template status (more coming soon!):
$3
| Template | Description | Status |
| ---------- | ------------------------------ | ------ |
| default | Express + TypeScript starter | β
Active |$3
#### ORM/Database Integration
| Template | Description | Priority |
| ------------------ | ------------------------------ | -------- |
|
prisma | Type-safe database client with auto-generated types | π₯ High |
| drizzle | TypeScript-first ORM with zero runtime overhead | π₯ High |
| mikro-orm | Data Mapper ORM pattern for TypeScript | π₯ High |
| mongoose | Elegant MongoDB ODM for Node.js | π₯ High |
| node-postgres | High-performance PostgreSQL native driver | π§ In Dev |
| knex | Flexible SQL query builder & migrations | π§ In Dev |
| typeorm | Decorator-based Active Record ORM | π§ In Dev |
| sequelize | Mature Promise-based SQL ORM | π§ In Dev |
| typegoose | TypeScript-friendly Mongoose alternative | π§ In Dev |#### Architecture/Controller Style
| Template | Description | Priority |
| ------------------ | ------------------------------ | -------- |
|
graphql | GraphQL API schema with Apollo Server | π§ In Dev |> Note: Currently focusing on the
default` template. Additional templates will be activated as they're completed and tested.MIT(LICENSE) Β© AGUMON (ljlm0402)


