@mianfrigo/express-typescript-generator

npm package to generate boilerplate node express application with typescript and webpack

Usage no npm install needed!

<script type="module">
  import mianfrigoExpressTypescriptGenerator from 'https://cdn.skypack.dev/@mianfrigo/express-typescript-generator';
</script>

README

express-typescript

Express with TypeScript's application generator.

NPM Version Package License

What is it?

Node express generator similar to express-generator-typescript module. In this case we use Webpack to compile the typescript to Javascript, also implement EsLint to follow good practice and a clean code.

Project example

When you run @mianfrigo/express-typescript-generator, it sets up a very basic application with a single basic route. This is to show how route work with node and express.

A small cli will guide you through a couple of option to setup you new project base on your needs. You can select and setup your routes using limiters or setup mongoDb with mongoose. The app is configured with production quality client-side security. If you decide to use mongoDb it will generate a basic mongoose setup with /user as a first route, it will implementing a full CRUD to show the use of mongoose. I highly encourage to use this option.

Installation

$ npm install -g @mianfrigo/express-typescript-generator

Quick Start

The quickest way to get started is use $ mfg-express-generator and pass in the name of the project you want to create.

If you don't specify a project name, express-ts will be set up for you as default name.

Create the app:

$ mfg-express-typescript-generator "MY_PROJECT"
 or
$ mfg-express-generator "MY_PROJECT"

Start your @mianfrigo/express-typescript-generator app in development mode at http://localhost:3000/:

$ cd "project name" && npm run dev

The project implement a white list of host for the CORS configuration that you can easy change/update on the config/config.ts file.

If you decide to implement mongoDb as your Database, you would need to change the mongoDb connection string in the .env file before running the npm run dev command. The CLI will generate some routes for you have a good start.

Available commands for the server.

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

Debugging

During development, @mianfrigo/express-typescript-generator uses webpack compile the typescript code to javascript and nodemon to restart the server when changes are detected.

Happy coding

License

MIT