Skip to content

** Layered Architecture ** This Project is intended to give you all the Starter features for any Product which you develop. Some of the features are SignIn, SignUp, 2Factor Authentication using GAuth, Change Password, Reset Password, Email Verification, QR Generation, PM2 Based Application, Log Rotation and other, More to add. All the features w…

License

Notifications You must be signed in to change notification settings

pavakalyankillari/node-ultimate-starter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-ultimate-starter!

node-ultimate-starter is the repo you should look into if you need one of those awesome boilerplates. Wondering what's so special about this ? Checkout out the Features and other info below. This repo follows layered architecture.

Table of Contents

Getting Started

Prerequisites

  1. Rename .env.example to .env
  2. Change the appropriate values of .env variables.
  3. If you don't have PM2 Globally Installed., run this.
npm install pm2 -g

Installation

npm install

Usage

To run in development mode, use:

pm2 run dev

To run in debug mode, use:

pm2 run debug

To run in production mode, use:

npm start

Features

  1. Authentication
    • SignUp
    • SignIn
    • Two Step Verification ( Google Authenticator )
    • Email Verification
    • Resend Email
    • Reset Password
    • Powerful password encryption using ARGON2
  2. Users Account Related
    • User Settings
      • Change Password
      • Theme Preferences
      • Notification Preferences
    • Save User Session - User Tracking
      • IP Address
      • UserAgent
      • Physical Location ( Coordinates )
  3. Log Management
    • Log Rotation on a daily basis
  4. Mailer Service
    • Custom Mail
    • Pre-defined Mails
  5. Response Formatter ( Common Response Format Service for all the API's )
  6. PM2 Deployment
    • Environments
      • Development
      • Production
      • Debug

Coding Standards

  • NodeJS Coding best practises are followed from NodeBestPractices Repo.
  • Codebase strictly uses Async/Await, No usage of Callbacks & Promises.
  • JavaScript ES6 Standards.
  • Promises can be used when using 3rd party code snippet's but, Restrict to Async/Await wherever possible.

Roadmap

Coming soon.

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AwesomeFeature)
  3. Commit your Changes (git commit -m 'Add some AwesomeFeature')
  4. Push to the Branch (git push origin feature/AwesomeFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Akhil Mukkamala - @AkhilMukkamala - E-Mail

About

** Layered Architecture ** This Project is intended to give you all the Starter features for any Product which you develop. Some of the features are SignIn, SignUp, 2Factor Authentication using GAuth, Change Password, Reset Password, Email Verification, QR Generation, PM2 Based Application, Log Rotation and other, More to add. All the features w…

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 99.0%
  • Shell 1.0%