Skip to content

bhumit070/node-boilerplate-ts

Repository files navigation

Node Boilerplate Typescript

  • This repo is boilerplate for typescript and nodejs projects

What is included

  • Server with express
  • Security Packages
    • hpp - Express middleware to protect against HTTP Parameter Pollution attacks
    • helmet - Helmet helps secure Express apps by setting HTTP response headers.
  • File uploading
  • Sending Emails
  • Logging
    • By default it is configured to log on console but you can extend it to write to any file as well
  • Object(s) Validation using zod
  • Error Handling
  • Express Req object extend with typescript support

Routing

  • The base path for api will be api.
  • Any folder you put inside modules folder that container routes.ts file will be added to express router stack and that will be route for the api as well.
  • So suppose if you make folder something like modules/v1/file/routes.ts then all the routes defined in that routes.ts file will be registered and will be available at domain/api/modules/v1/file.
  • So think like routing as a file based routing.
  • You must export router as default export from routes.ts file to make this happen.

Error handling

  • You can alway use try catch in your controllers to handle errors by your self, but here I have used different approach.
  • Just wrap your any controller/middleware that receives express's req,res object wrap them in PromiseHandler function and this will handle the rest of the stuff.
  • Also you can create custom errors in error folder as per your requirement and handle it in handleApiError according the way you want.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published