launchstack-cli
v2.0.2
Published
A TypeScript CLI for production-ready backend API scaffolding, deployment automation, configuration management, and developer workflows.
Maintainers
Keywords
Readme
LaunchStack CLI
Production-ready backend scaffolding and deployment toolkit for TypeScript developers.
LaunchStack CLI generates enterprise-grade Fastify APIs with authentication, Prisma, PostgreSQL, Swagger/OpenAPI, Docker, CI/CD, deployment presets, and opinionated project architecture in a single command.
npm install -g launchstack-cliFeatures
- Fastify + TypeScript API starter
- Prisma ORM with PostgreSQL
- JWT Access & Refresh Token authentication
- Secure Refresh Token rotation and revocation
- bcrypt password hashing
- Zod request and response validation
- Swagger / OpenAPI documentation
- Layered architecture (Controllers, Services, Repositories & DTOs)
- Health and Readiness endpoints
- Docker and Docker Compose support
- GitHub Actions CI workflow
- Render, Railway and Fly.io deployment presets
- Vitest testing setup
- Environment configuration
- Production-ready project structure
Requirements
- Node.js 20 or newer
- PostgreSQL (or Docker Desktop)
Installation
Install LaunchStack globally:
npm install -g launchstack-cliVerify the installation:
launchstack --helpQuick Start
Create a new backend API:
launchstack create my-apiMove into the project and install dependencies:
cd my-api
npm installStart the local database:
npm run db:upCreate the initial database schema:
npm run prisma:migrate -- --name initStart the development server:
npm run devOpen the generated API:
| Endpoint | URL | |----------|-----| | Swagger UI | http://localhost:3000/docs | | Health | http://localhost:3000/health | | Readiness | http://localhost:3000/ready |
Generated Project Structure
my-api/
├── prisma/
├── src/
│ ├── config/
│ ├── core/
│ ├── lib/
│ ├── middleware/
│ ├── modules/
│ │ ├── auth/
│ │ └── users/
│ ├── plugins/
│ ├── routes/
│ ├── schemas/
│ └── types/
├── tests/
├── Dockerfile
├── docker-compose.yml
├── README.md
└── package.jsonGenerated Technology Stack
- Fastify
- TypeScript
- Prisma
- PostgreSQL
- JWT Authentication
- bcrypt
- Zod
- Swagger / OpenAPI
- Docker
- Docker Compose
- GitHub Actions
- Render
- Railway
- Fly.io
- Vitest
Core Commands
Create a new API
launchstack create my-apiSkip dependency installation:
launchstack create my-api --no-installInspect a generated project:
launchstack doctor --directory my-apiGenerate a JSON health report:
launchstack doctor --directory my-api --jsonInitialize LaunchStack configuration:
launchstack init --name my-appValidate configuration:
launchstack validateView project status:
launchstack statusSwitch deployment environment:
launchstack env stagingSelect a deployment provider:
launchstack provider renderDeploy:
launchstack deployView deployment history:
launchstack historyFind the latest rollback target:
launchstack rollbackManage secrets:
launchstack secrets add API_KEY value
launchstack secrets list
launchstack secrets remove API_KEYGenerate Docker assets:
launchstack docker initGenerate GitHub Actions workflows:
launchstack github initGenerated Project Commands
Quality
npm run typecheck
npm test
npm run build
npm run check
npm run validation:checkProduction
npm run docker:build
npm run docker:up
npm run docker:prod
npm run docker:down
npm run docker:logs
npm run prisma:deployDevelopment
Install project dependencies:
npm installRun the LaunchStack test suite:
npm run test:runBuild LaunchStack:
npm run buildInspect the npm package:
npm pack --dry-runRun the release quality gate:
npm run release:checkRoadmap
Upcoming improvements planned for future releases include:
- Additional backend templates
- Background job scaffolding
- Redis integration
- Queue workers
- WebSocket support
- Microservice templates
- OAuth providers
- Kubernetes deployment presets
- Additional cloud providers
Contributing
Issues, feature requests and pull requests are welcome.
If you'd like to contribute:
- Fork the repository.
- Create a feature branch.
- Commit your changes.
- Submit a pull request.
Author
Williams Ashibuogwu
- GitHub: https://github.com/wbizmo
- LinkedIn: https://linkedin.com/in/wbizmo
- npm: https://www.npmjs.com/package/launchstack-cli
