# create-express-typescript-application

> Create a new lightweight Express application with TypeScript

Latest version **2.2.9** (published 2021-04-14) · MIT license · 0 weekly downloads

## Install

```sh
npm install create-express-typescript-application
pnpm add create-express-typescript-application
yarn add create-express-typescript-application
bun add create-express-typescript-application
```

Provides the command `create-express-typescript-application`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.2.9 |
| Published | 2021-04-14 |
| First published | 2021-01-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 8 |
| Unpacked size | 150.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Prawira Genestonlia |
| Maintainers | prawira96 |
| Keywords | express, typescript, app, create, generator, ex, generate, types, ts, express-ts, router, api, structure |

## Links

- npm: https://www.npmjs.com/package/create-express-typescript-application
- Repository: https://github.com/PrawiraGenestonlia/create-express-typescript-application
- Homepage: https://github.com/PrawiraGenestonlia/create-express-typescript-application#readme
- Issues: https://github.com/PrawiraGenestonlia/create-express-typescript-application/issues
- npm.io page: https://npm.io/package/create-express-typescript-application

## Dependencies (8)

- [ncp](https://npm.io/package/ncp.md) ^2.0.0
- [path](https://npm.io/package/path.md) ^0.12.7
- [rimraf](https://npm.io/package/rimraf.md) ^3.0.2
- [fs-extra](https://npm.io/package/fs-extra.md) ^9.0.1
- [commander](https://npm.io/package/commander.md) ^7.0.0
- [concurrently](https://npm.io/package/concurrently.md) ^5.3.0
- [child_process](https://npm.io/package/child_process.md) ^1.0.2
- [edit-json-file](https://npm.io/package/edit-json-file.md) ^1.5.0

## Alternatives

- [express-promise-router](https://npm.io/package/express-promise-router.md) — 736.1K weekly downloads
- [next-usequerystate](https://npm.io/package/next-usequerystate.md) — 29.8K weekly downloads
- [@bitkyc08/opencodex](https://npm.io/package/@bitkyc08/opencodex.md) — 4.6K weekly downloads
- [lynkr](https://npm.io/package/lynkr.md) — 575 weekly downloads
- [baremetal.js](https://npm.io/package/baremetal.js.md) — 42 weekly downloads

## Recent versions

- 2.2.9 (latest) — 2021-04-14
- 2.2.7 — 2021-03-15
- 2.2.6 — 2021-03-14
- 2.2.5 — 2021-03-14
- 2.2.4 — 2021-03-13
- 2.2.3 — 2021-03-13
- 2.2.2 — 2021-03-13
- 2.2.1 — 2021-03-13
- 2.1.7 — 2021-03-03
- 2.1.6 — 2021-03-03
- 2.1.5 — 2021-03-03
- 2.1.4 — 2021-03-03
- 2.1.3 — 2021-03-03
- 2.1.2 — 2021-03-03
- 2.1.1 — 2021-02-02
- … 13 more at https://npm.io/package/create-express-typescript-application/versions

## README

<img alt='express typescript' src='https://github.com/PrawiraGenestonlia/create-express-typescript-application/raw/master/ExpressTS.png' border='0'>

create-[express](https://www.npmjs.com/package/express)-[typescript](https://www.npmjs.com/package/typescript)-application.

<a href="https://www.npmjs.com/package/create-express-typescript-application" target="_blank"><img src="https://img.shields.io/npm/v/create-express-typescript-application.svg" alt="NPM Version" /></a>
<a href="https://www.npmjs.com/package/create-express-typescript-application" target="_blank"><img src="https://img.shields.io/npm/l/create-express-typescript-application.svg" alt="Package License" /></a>
<a href="https://www.npmjs.com/package/create-express-typescript-application" target="_blank"><img src="https://img.shields.io/npm/dm/create-express-typescript-application.svg" alt="NPM Downloads" /></a>
[![Wallaby.js](https://img.shields.io/badge/wallaby.js-powered-blue.svg?style=badge&logo=github)](https://wallabyjs.com/oss/)
## Why _create-express-typescript-application_?

_create-express-typescript-application_ creates a new lightweight express application which is fully customizable for your use case. With the support of TypeScript, it allows a robust NodeJS express app to serve as an RESTful backend server.

There are three modes of _create-express-typescript-application_, mainly:
1. **plain** mode - lightweight express typescript app (--type plain)
2. **typeorm** mode - lightweight express typescript app with typeorm (sqlite included) and swagger (OpenAPI documentation) integrated
3. **prisma** mode - fullweight express typescript app with prisma (relational database ORM) and swagger (OpenAPI documentation) integrated

You are highly recommended to use typeorm template if database is required in this project, otherwise, plain mode.

## Application Details

When you run _create-express-typescript-application_, it sets up a very simple application without junk packages. 
The src/app/sample folder shows how easy it is to create new routes.

## Installation

Pre-requisite: Node, npm and git are locally installed.

```sh
$ Just use 'npx'
  Or
$ npm install -g create-express-typescript-application
$ create-express-typescript-application {project-name-without-spaces}
# example (plain lightweight) $ create-express-typescript-application {project-name-without-spaces} -t plain
# example (typeorm lightweight) $ create-express-typescript-application {project-name-without-spaces} -t typeorm
# example (prisma fullweight) $ create-express-typescript-application {project-name-without-spaces} -t prisma
```

## Quick Start

The quickest way to get started is use npx and pass in the name of the project you want to create.
It is invalid to exclude project name.

Create the app:

```bash
$ npx create-express-typescript-application {project-name-without-spaces}
```

Start your express-app in development mode at `http://localhost:8080/`
```bash
$ cd "project name" && npm run dev
```
If swagger is included, you can view the swagger file at `http://localhost:8080/docs`

Or build your application and serve it.
```bash
$ cd "project name" && npm run build && npm start
```

## List of options.

Options:
  -V, --version      output the version number
  -d, --debug        output extra debugging
  -t, --template <type>  specify only prisma or plain or typeorm
  -p, --prisma       define type prisma
  -y, --typeorm       define type typeorm
  -h, --help         display help for command

Prisma options integrates prisma ORM into the lightweight express typescript app.

## Available commands for the server.

- Run the server in development mode: `npm run dev`.
- Build the project for production: `npm run build`.
- Run the production build: `npm start`.

## License

[MIT](LICENSE)

---
_Source: https://npm.io/package/create-express-typescript-application · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
