Nodejs Starter
Express / Nodejs Starter with JWT authentication, SQLite database, Sequelize ORM, unit tests and basic tooling - Provided by AppSeed Web App Generator.
Enjoy this project? Join our efforts to actively support the open-source ecosystem via a PayPal.me donation. Thank you!
Requirements
- Node.js >= 6.x
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
api/users/login
Login: POST api/users/login
Host: localhost:3000
Content-Type: application/json
{
"email": "[email protected]",
"password": "demo"
}
/api/users/signup
Signup: POST api/users/signup
Host: localhost:3000
Content-Type: application/json
{
"email": "[email protected]",
"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