/bbs

Blood donation system

Primary LanguageJavaScriptMIT LicenseMIT

Express / Nodejs Starter with JWT authentication, SQLite database, Sequelize ORM, unit tests and basic tooling. Actively supported and versioned by AppSeed


Open-Source Nodejs Starter - Product cover image.


Requirements


Authentication

Authentication is based on json web tokens. passport-jwt strategy is used to handle the email / password authentication. After a successful login the generated token is sent to the requester.


API

Login: api/users/login

POST api/users/login
Host: localhost:3000
Content-Type: application/json

{
    "email": "demo@appseed.us",
    "password": "demo"
}

Signup: /api/users/signup

POST api/users/signup
Host: localhost:3000
Content-Type: application/json

{
    "email": "demo@appseed.us",
    "password": "demo",
    "name": "George",
    "surname": "Clooney"
}

Setting up for development

  • clone repo: git clone https://github.com/app-generator/nodejs-starter.git
  • change directory to nodejs-starter:
  • create a file named .env which should contain the following default setup:
SALT=35kj7waj3k5kja09jeoi21kn0pg13iuhlkn // used in password hashing
JWT_SECRET=secret        // used in JWT signing
SESSION_SECRET=secret    // used for session data
PORT=3000                // the port on which your server will be available on
SERVER_ADDRESS=127.0.0.1 // or 0.0.0.0 for all or other interface address you want to listen
  • users are saved in file config/users.js

Scripts

Install Modules

$ npm i
$ npm i nodemon -g 

Run

$ npm run start # classic start OR
$ npm run dev # with nodemon live update  

Runs the application with nodemon. Server is listening on Port 3000 by default. This can be overwritten by PORT constant in .env file.


Support

For issues and features request, use Github or access the support page provided by AppSeed


License

MIT @ AppSeed



Nodejs Starter provided by AppSeed