Skip to content

BearTS/express-typescript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

express-typescript

This repository provides a template for building a production-ready Express.js application using TypeScript. It includes support for sockets, Redis, and MongoDB.

Features

  • Express.js application written in TypeScript: The project provides a template for building a server-side application using Express.js framework with the benefits of TypeScript's static typing and enhanced tooling.

  • Support for sockets: The template includes support for sockets, allowing real-time bidirectional communication between the server and clients. This enables building interactive and dynamic applications that require instant updates.

  • Redis integration: The project integrates with Redis, a popular in-memory data store. This integration enables features like caching, session management, and pub/sub messaging, enhancing the performance and scalability of the application.

  • MongoDB integration: The template includes integration with MongoDB, a flexible and scalable NoSQL database. This allows developers to store and retrieve data efficiently and leverage the powerful querying capabilities of MongoDB.

  • Production-ready configuration and setup: The project provides a production-ready setup with optimized configurations and best practices. It includes Dockerfiles and docker-compose.yml for containerization, allowing easy deployment and scalability. Additionally, it provides a sample Nginx configuration for reverse proxy and SSL/TLS termination.

  • Plug and Play files: The repository includes plug and play files, which means that developers can start using the template immediately by simply replacing or modifying the provided files to suit their specific requirements. This accelerates the development process and enables quick setup for new projects.

These features combined provide a solid foundation for building robust, scalable, and efficient web applications using Express.js, TypeScript, sockets, Redis, and MongoDB.

Prerequisites

Before using this template, make sure you have the following installed:

  • Node.js (v16 or higher)
  • Docker (for running in containers)

Getting Started

  • Clone this repository.
  • Install the dependencies by running npm install or pnpm install.
  • Rename app/example.env to app/.env and update the environment variables as per your requirements.
  • Build the TypeScript code by running npm run build or pnpm run build.
  • Start the application using npm start or pnpm start.

Deployment

To deploy the application, you can use the provided deploy.sh script. Make sure to update the script with your deployment configuration.

License

This project is licensed under the MIT License.