All Projects β†’ ljlm0402 β†’ Typescript Express Starter

ljlm0402 / Typescript Express Starter

Licence: mit
πŸš€ TypeScript Express Starter

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Typescript Express Starter

React Express Fullstack
Full stack (mostly unopinionated) starter pack with React+Redux and Expressjs
Stars: ✭ 23 (-90.34%)
Mutual labels:  eslint, sequelize, mysql, express, nginx
Express React Boilerplate
πŸš€πŸš€πŸš€ This is a tool that helps programmers create Express & React projects easily base on react-cool-starter.
Stars: ✭ 32 (-86.55%)
Mutual labels:  eslint, prettier, mongodb, express, jest
Nodejs Api Boilerplate
A boilerplate for kickstart your nodejs api project with JWT Auth and some new Techs :)
Stars: ✭ 364 (+52.94%)
Mutual labels:  eslint, prettier, mongoose, mongodb, express
Mevn Cli
Light speed setup for MEVN(Mongo Express Vue Node) Apps
Stars: ✭ 696 (+192.44%)
Mutual labels:  eslint, prettier, mongoose, mongodb, express
Aclify
πŸ”’ Node Access Control Lists (ACL).
Stars: ✭ 49 (-79.41%)
Mutual labels:  sequelize, mysql, mongodb, postgresql, express
Angular Full Stack
Angular Full Stack project built using Angular, Express, Mongoose and Node. Whole stack in TypeScript.
Stars: ✭ 1,261 (+429.83%)
Mutual labels:  mongoose, mongodb, express, jsonwebtoken, bcrypt
Express Mongoose Es6 Rest Api
πŸ’₯ A boilerplate application for building RESTful APIs Microservice in Node.js using express and mongoose in ES6 with code coverage and JsonWebToken Authentication
Stars: ✭ 2,811 (+1081.09%)
Mutual labels:  eslint, mongoose, mongodb, express, jsonwebtoken
Node.js
δΈ€ζ­₯δΈ€ζ­₯ε­¦δΉ Node.jsοΌŒεΈ¦δ½ δ»Žι›ΆεΌ€ε§‹ε­¦δΉ Node.jsοΌζœ¬δ»“εΊ“ζ˜―θ‡ͺε·±ζ€»η»“ηš„Node.jsε­¦δΉ ε›Ύζ–‡ζ•™η¨‹οΌŒι‡Œι’ζœ‰ε­¦δΉ ζ‘ˆεˆ—ε’ŒζΊδ»£η οΌˆpubdreamccεŽŸεˆ›οΌŒζ¬’θΏŽθ½¬θ½½οΌŒζ¬’θΏŽstarοΌ‰
Stars: ✭ 181 (-23.95%)
Mutual labels:  mongoose, mongodb, express, npm
Shell
Infrastructure Management Shell - Linux
Stars: ✭ 381 (+60.08%)
Mutual labels:  mysql, mongodb, postgresql, nginx
Node Express Boilerplate
A boilerplate for building production-ready RESTful APIs using Node.js, Express, and Mongoose
Stars: ✭ 890 (+273.95%)
Mutual labels:  mongoose, mongodb, express, jest
Express Boilerplate
πŸš€ Starter project for a RESTful API in Node with Express & mongoose component-based
Stars: ✭ 9 (-96.22%)
Mutual labels:  eslint, mongoose, mongodb, express
Netkiller.github.io
Netkiller Free ebook - 免费甡子书
Stars: ✭ 861 (+261.76%)
Mutual labels:  mysql, mongodb, postgresql, nginx
Express Graphql Boilerplate
Express GraphQL API with JWT Authentication and support for sqlite, mysql, and postgresql
Stars: ✭ 201 (-15.55%)
Mutual labels:  mysql, postgresql, express, jest
Blog Service
blog service @nestjs
Stars: ✭ 188 (-21.01%)
Mutual labels:  mongoose, mongodb, express, jest
Node Express Mongodb Jwt Rest Api Skeleton
This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API). Demo of frontend in VueJS here: https://github.com/davellanedam/vue-skeleton-mvp
Stars: ✭ 603 (+153.36%)
Mutual labels:  eslint, mongoose, mongodb, express
Node Typescript Boilerplate
Minimalistic project template to jump start a Node.js back-end application in TypeScript. ESLint, Jest and type definitions included.
Stars: ✭ 1,061 (+345.8%)
Mutual labels:  eslint, prettier, express, jest
Mostly
They mostly come at night; mostly.
Stars: ✭ 78 (-67.23%)
Mutual labels:  eslint, prettier, express, jest
Nodebestpractices
βœ… The Node.js best practices list (December 2021)
Stars: ✭ 72,734 (+30460.5%)
Mutual labels:  eslint, express, npm, jest
Phalcon Vm
Vagrant configuration for PHP7, Phalcon 3.x and Zephir development.
Stars: ✭ 43 (-81.93%)
Mutual labels:  mysql, mongodb, postgresql, nginx
Fullstack Shopping Cart
MERN stack shopping cart, written in TypeScript
Stars: ✭ 82 (-65.55%)
Mutual labels:  mongoose, mongodb, express, jest
logo

Express with TypeScript's Starter.

NPM Version Package License Release Version NPM Downloads


πŸ‡°πŸ‡· Korean


πŸ€” What is Express ?

Express is a fast, open and concise web framework and is a Node.js based project.

😎 Introducing The Project

Express consists of JavaScript, which makes it vulnerable to type definitions.

That's why we avoid supersets with starter packages that introduce TypeScript.

The package is configured to use TypeScript instead of JavaScript.

The project referred to express-generator-typescript by seanpmaxwell πŸ‘

πŸš€ Quick Start

Install with the npm Global Package

$ npm install -g typescript-express-starter

Run npx to Install The Package

npx is a tool in the JavaScript package management module, npm.

This is a tool that allows you to run the npm package on a single run without installing the package.

If you do not enter a project name, it defaults to typescript-express-starter.

$ npx typescript-express-starter "project name"

Select a Templates

cli

Start your typescript-express-starter app in development mode at http://localhost:3000/

Template Type

Name Desc
Default Express Default
Sequlize Easy to use multi SQL dialect ROM for Node.js
Mongoose MongoDB Object Modeling(ODM) designed to work in an asynchronous environment
TypeORM An ORM that can run in Node.js and Others
Prisma Modern Database Access for TypeScript & Node.js
Knex (developing) SQL query builder for Postgres, MySQL, MariaDB, SQLite3 and Oracle

πŸ›Ž Available Commands for the Server

  • Run the Server in production mode : npm run start or Start typescript-express-starter in VS Code
  • Run the Server in development mode : npm run dev or Dev typescript-express-starter in VS Code
  • Run all unit-tests : npm run test or Test typescript-express-starter in VS Code
  • Check for linting errors : npm run lint or Lint typescript-express-starter in VS Code
  • Fix for linting : npm run lint:fix or Lint:Fix typescript-express-starter in VS Code

πŸ’Ž The Package Features

Simple Icons

🐳 Docker - Containers

Docker is a platform for developers and sysadmins to build, run, and share applications with containers.

Docker Install.

  • starts the containers in the background and leaves them running : docker-compose up -d
  • Stops containers and removes containers, networks, volumes, and images : docker-compose down

Modify docker-compose.yml and Dockerfile file to your source code.

♻️ NGINX - Reverse Proxy

NGINX is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.

Proxying is typically used to distribute the load among several servers, seamlessly show content from different websites, or pass requests for processing to application servers over protocols other than HTTP.

When NGINX proxies a request, it sends the request to a specified proxied server, fetches the response, and sends it back to the client.

Modify nginx.conf file to your source code.

✨ ESLint, Prettier - Code Formatter

Palantir, the backers behind TSLint announced in 2019 that they would be deprecating TSLint in favor of supporting typescript-eslint in order to benefit the community.

So, migration from TSLint to ESLint.

ESLint, Find and fix problems in your JavaScript code

Prettier is an opinionated code formatter.

It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary.

  1. Install VSCode Extension Prettier, ESLint

  2. CMD + Shift + P (Mac Os) or Ctrl + Shift + P (Windows)

  3. Format Selection With

  4. Configure Default Formatter...

  5. Prettier - Code formatter

formatter

πŸ“— Swagger - API Document

Swagger is Simplify API development for users, teams, and enterprises with the Swagger open source and professional toolset.

Easily used by Swagger to design and document APIs at scale.

Start your app in development mode at http://localhost:3000/api-docs

Modify swagger.yaml file to your source code.

🌐 REST Client(VSCode Extension) - HTTP Client Tools

REST Client allows you to send HTTP request and view the response in Visual Studio Code directly.

VSCode Extension REST Client Install.

Modify *.http file in http folder to your source code.

πŸ—‚ Code Structure (default)

β”‚
β”œβ”€β”€ /.vscode
β”‚   β”œβ”€β”€ launch.json
β”‚   └── settings.json
β”‚
β”œβ”€β”€ /src
β”‚   β”œβ”€β”€ /controllers
β”‚   β”‚   β”œβ”€β”€ auth.controller.ts
β”‚   β”‚   β”œβ”€β”€ index.controller.ts
β”‚   β”‚   └── users.controller.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /dtos
β”‚   β”‚   └── users.dto.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /exceptions
β”‚   β”‚   └── HttpException.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /http
β”‚   β”‚   β”œβ”€β”€ auth.http
β”‚   β”‚   └── users.http
β”‚   β”‚
β”‚   β”œβ”€β”€ /interfaces
β”‚   β”‚   β”œβ”€β”€ auth.interface.ts
β”‚   β”‚   β”œβ”€β”€ routes.interface.ts
β”‚   β”‚   └── users.interface.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /middlewares
β”‚   β”‚   β”œβ”€β”€ auth.middleware.ts
β”‚   β”‚   β”œβ”€β”€ error.middleware.ts
β”‚   β”‚   └── validation.middleware.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /models
β”‚   β”‚   └── users.model.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /routes
β”‚   β”‚   β”œβ”€β”€ auth.route.ts
β”‚   β”‚   β”œβ”€β”€ index.route.ts
β”‚   β”‚   └── users.route.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /services
β”‚   β”‚   β”œβ”€β”€ auth.service.ts
β”‚   β”‚   └── users.service.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /tests
β”‚   β”‚   β”œβ”€β”€ auth.test.ts
β”‚   β”‚   β”œβ”€β”€ index.test.ts
β”‚   β”‚   └── users.test.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ /utils
β”‚   β”‚   β”œβ”€β”€ logger.ts
β”‚   β”‚   β”œβ”€β”€ util.ts
β”‚   β”‚   └── vaildateEnv.ts
β”‚   β”‚
β”‚   β”œβ”€β”€ app.ts
β”‚   └── server.ts
β”‚
β”œβ”€β”€ .dockerignore
β”œβ”€β”€ .editorconfig
β”œβ”€β”€ .env
β”œβ”€β”€ .eslintignore
β”œβ”€β”€ .eslintrc
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .huskyrc
β”œβ”€β”€ .prettierrc
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ Dockerfile.dev
β”œβ”€β”€ jest.config.js
β”œβ”€β”€ Makefile
β”œβ”€β”€ nginx.conf
β”œβ”€β”€ nodemon.json
β”œβ”€β”€ package-lock.json
β”œβ”€β”€ package.json
β”œβ”€β”€ swagger.yaml
└── tsconfig.json

πŸ“¬ Recommended Commit Message

When Commit Message
Add Feature ✨ Add Feature
Fix Bug 🐞 Fix Bug
Refactoring Code πŸ›  Refactoring Code
Install Package πŸ“¦ Install Package
Fix Readme πŸ“š Fix Readme
Update Version 🌼 Update Version
New Template πŸŽ‰ New Template

πŸ’³ License

MIT

🀝 Contributors

Contributors

πŸ“¬ Please request an issue

In the future, please write down your desired template, questions, and features to be added, and we will try our best to answer and reflect them.

Thank you very much for your interest in our package. ( ο½₯βˆ€ο½₯)οΎ‰ο½Ό

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].