npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

express-ts-boiler-plate

v1.2.69

Published

Basic express Typescript with mongodbConnection Boiler Plate

Downloads

165

Readme


Overview

Welcome to express-ts-boiler-plate, a feature-rich and professionally structured boilerplate for building robust and scalable backend applications using Express.js and TypeScript. This boilerplate comes pre-configured with dynamic imports, ESLint, Prettier, and TypeScript settings to ensure a smooth development experience.


Features

  • Dynamic Imports: Leverage the power of dynamic imports to efficiently load modules as needed, enhancing the overall performance of your application.

  • ESLint and Prettier: Maintain a consistent code style and catch potential issues early with ESLint and Prettier configurations included in the project.

  • TypeScript Setup: Harness the benefits of TypeScript for enhanced code readability, maintainability, and early error detection.

  • Multi Environment setup: Ease of multiple environemnts for replicalability.

  • Professional Backend Directory Structure: The boilerplate follows a well-organized and intuitive directory structure that promotes scalability and maintainability of your backend codebase.


Getting Started

Prerequisites

Before you begin, ensure you have the following installed:


Installation

Setup the Boilerplate (Any Directory):

npx express-ts-boiler-plate@latest

The rest would be done via User Interaction.


Configuration

Already created a .env file in the project root and configured with MongoDB connection:

MONGODB_URI=localhost:27017/

Run the Application

Start the application with the following command:

npm dev

To include the additional environment configurations in your README.md, you can revise the section about running the application to not only cover how to start the application in the development environment but also to explain how users can easily switch between different environments by simply modifying the ENVIRONMENT variable. Here's how you might articulate these updates:


Configuring Multiple Environments

To switch between environments, modify the ENVIRONMENT variable in the npm script within the package.json. The default script for the development environment is shown below:

"scripts": {
    "start:dev": "env-cmd -f ./src/config/.env.dev ts-node -r tsconfig-paths/register dist/app.js",
    "dev": "cross-env ENVIRONMENT=dev nodemon --exec ts-node-dev -r tsconfig-paths/register src/app.ts",
}

For example, to add a production environment, you could add a new script like this:

"scripts": {
    "start:prod": "env-cmd -f ./src/config/.env.prod ts-node -r tsconfig-paths/register dist/app.js",
    "prod": "cross-env ENVIRONMENT=prod nodemon --exec ts-node-dev -r tsconfig-paths/register src/app.ts"
}

And just add .env.prod to the src/config directory.

To run the application in the production environment (without build), you would then use:

npm run prod

with build (optimized), you would use:

npm run start:prod

This setup allows for easy configuration and switching between environments, ensuring that your application can be properly configured for different stages of deployment.


Acknowledgments

Special thanks to Najam Bashir and Arslan Ahmad (Really appreciate the Motivation and the starting idea)

And all of my NextTek Team family.