express-typescript-gen
v1.0.2
Published
A generator for Express.js projects with TypeScript
Downloads
7
Maintainers
Readme
express-typescript-gen
express-typescript-gen
is a command-line tool that generates an Express.js project with TypeScript and ts-node
support. It includes options for setting up Prisma or Mongoose and generates a docker-compose.yml
file and a .env
file based on the project name.
Features
- Generates an Express.js project with TypeScript
- Sets up
ts-node
for development - Optionally includes Prisma or Mongoose
- Generates a
docker-compose.yml
file for PostgreSQL or MongoDB - Creates a
.env
file with the appropriate database URL
Installation
To install the generator, run:
npm install -g express-typescript-gen
Usage
To create a new project, use the following command:
npx express-typescript-gen <project-name> [options]
Options
--prisma
: Set up Prisma and a PostgreSQL database--mongoose
: Set up Mongoose and a MongoDB database
Examples
Create a basic Express.js project with TypeScript:
npx express-typescript-gen my-project
Create a project with Prisma and a PostgreSQL database:
npx express-typescript-gen my-project --prisma
Create a project with Mongoose and a MongoDB database:
npx express-typescript-gen my-project --mongoose
Project Structure
The generated project will have the following structure:
my-project
├── .env
├── .vscode
│ ├── launch.json
│ └── tasks.json
├── docker-compose.yml
├── package.json
├── src
│ └── index.ts
└── tsconfig.json
.env
: Environment variables, including the database URL.vscode
: VSCode configuration files for debugging and tasksdocker-compose.yml
: Docker Compose file for setting up the databasepackage.json
: Project configuration and dependenciessrc/index.ts
: Entry point for the Express.js applicationtsconfig.json
: TypeScript configuration file
Scripts
The generated package.json
includes the following scripts:
start
: Start the development server usingts-node
build
: Compile the TypeScript files to JavaScript
License
This project is licensed under the MIT License.
Replace `<project-name>` with the name of your project in the usage instructions. This `README.md` provides a comprehensive guide for users to understand the functionality of your package and how to use it effectively.