votejs

0.1.7 • Public • Published

votejs

This is a voting application using NodeJS.

license npm version Build Status Coverage Status

Prerequisite

We will need the following to be installed on our system.

  • Node v10 or above
  • NPM v6 or above
  • Postgres v10 or above

Getting started

Run the following command to install all the packages.

➜ npm install

Environment

Set the environment by setting the environment variable NODE_ENV.

Allowed values: dev, stage, prod

➜ export NODE_ENV=dev

Encryption Key

Set the encryption key as environment variable. Make sure it is exactly 256 bits long (32 characters).

➜ export ENCRYPTION_KEY=crypto-key-exactly-32-chars-long

Note! Encryption algorithm used: aes-256-cbc and IV length is 16.

Database setup

Create a database in Postgres. Then export the following environment variables.

On my local machine the host, user, password, database and port for Postgres are the following.

Note! If you have some other values then use that.

➜ export DB_HOST=localhost
➜ export DB_USER=
➜ export DB_PASSWORD=
➜ export DB_DATABASE=votejs
➜ export DB_PORT=5432

For more details check the NOTES.md file.

Seed

Run the following command to insert the seed data in database.

➜ npm run db:seed

Demo admin for DEV environment

For development environment the following demo admin account is created when you run the db:seed command.

You can use the demo admin to explore the APIs in dev environment.

{
  userName: 'demo.dev.admin',
  emailId: 'demo.dev.admin@example.com',
  password: 'root1234'
  passcode: '123456'
}

You will find this in seed/admin.js file.

Demo voter for DEV environment

For development environment the following demo voter account is created when you run the db:seed command.

You can use the demo voter to explore the APIs in dev environment.

{
  userName: 'demo.dev.user',
  emailId: 'demo.dev.user@example.com',
  password: 'root1234'
  passcode: '123456'
}

You will find this in seed/voter.js file.

DOCUMENTATION

DOCUMENTATION.md

License

It's free 😃

MIT License Copyright (c) 2020 Yusuf Shakeel

Back this project

If you find this project useful and interesting then feel free to support me on Patreon.

Donate

Feeling generous 😃 Donate via PayPal

Package Sidebar

Install

npm i votejs

Weekly Downloads

1

Version

0.1.7

License

MIT

Unpacked Size

339 kB

Total Files

148

Last publish

Collaborators

  • yusufshakeel