generate-express-ts
v2.0.0
Published
Thin setup script for Express TypeScript applications. Comes with eslint enforced via husky using pre-commit hooks. Testing setup with jest.
Downloads
6
Maintainers
Readme
Generate Express TypeScript
This cli tool generates a thin, unopinionated Express application with TypeScript. It's designed to create a project structure, initialize version control, install dependencies, and configure TypeScript, ESLint, Prettier, and Jest for testing.
🍇 Features
🍦 Sets up an Express server with TypeScript
🍦 Configures ESLint with TypeScript support
🍦 Adds Prettier for code formatting
🍦 Sets up Jest and Supertest for endpoint testing
🍦 Initializes a new Git repository
🍦 Configures Husky for pre-commit hooks
🪵 Prerequisites
Before running this script, make sure you have the following installed:
- Node.js (v16 or higher)
- yarn (default package manager)
- git
🏰 Installation
Install the package globally using npm:
npm install -g generate-express-tsOr using Yarn:
yarn global add generate-express-ts🚂 Usage
After installing the package globally, you can set up a new Express TypeScript application by running:
generate-express-ts <project-name>Replace <project-name> with your desired project directory name. If you don't specify a name, it defaults to my-express-ts-app.
The script will create a new directory with the given project name (or the default name) and set up the project structure and configurations within that directory.
🧳 What's Included
The script will create the following files and directories:
.eslintrc.yml: ESLint configuration file.prettierrc.yml: Prettier configuration file.gitignore: Basic.gitignorefile for a Node.js projectapp.ts: Entry point for the Express applicationapp.spec.ts: Sample test file using Jest and Supertesttsconfig.json: TypeScript configuration file.lintstagedrc: Configuration for lint-stagedpackage.json: Node.js package manifest with scripts for common taskssrc/: Directory for source codesrc/api/: Directory for API endpointssrc/api/health/: Health check endpoint, accessible at/api/health
🧸 Scripts
The generated package.json includes the following scripts:
start: Runs the Express server usingts-nodedev: Runs the Express server usingnodemonbuild: Compiles TypeScript files to JavaScript in thedistdirectorytest: Runs tests using Jestserve: Runs the Express server usingnode(requiresbuildto be run first)
🎗️ License
Distributed under the MIT License. See LICENSE for more information.
🪄 Contributing
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
📱 Contact
Rafay Choudhury - x: @rafay_io - website: rafay.io
