Web Page: https://voting-poll-app.herokuapp.com/
The “Voting Poll” is a web application which is built for online voting system. This system can be used for minor election or to get others’ opinion about any matter and also share their opinion with others. This repository is containing source code of user panel only
- User registration with email verification
- User login/logout
- User can create a poll
- Can edit their poll
- Can delete their poll
- User can open poll for voting & can close poll temporarily for voting
- When voting is done, user can end voting session permanently
- Can publish poll as global or Unpublish poll from global
- Share poll via link
- Submit poll opinion
- Can change poll opinion before voting session has ended
- Real time poll result (percentage, no. of votes, pie chart)
- Can view his own created polls
- Can view the poll list that he/she participated
- Can search polls
- Can discover poll from global polls
- Can view his own poll’s response list (voter’s information)
- Can view profile of poll creator
- User can upload and update profile picture
- User can update email, username, name and password
- User can reset password through email link
- User can send message to admin
- Can add new admin/super admin
- New admin needs to verify email address & set password before proceeding to the dashboard
- Can view user list
- Can search user by name, email or username
- Can block/unblock user account
- Can view poll list
- Can search poll
- Can delete poll
- Can view messages
- Can identify read/unread messages
- Can search messages
- Can reply message directly from dashboard to user email
- Can see old replies of messages
- Can delete a message
- Can add/delete F.A.Q
- Can view admin/super admin list
- Can search admin by name, email, role
- Super admin can delete admin/other super admin
- Can upload or update profile image
- Can change account password
- User can reset password through email link
- An admin can do everything what super admin can do except add/delete an admin
npm install
https://cloudinary.com/ setup cloudinary account to store user image
Setup .env file
MONGO_DB_URI=<Enter_Database_URI>
BASE_URL=<Enter_Base_Url>
SEND_MAIL_FROM=<Enter_Email_Address>
MAIL_PASSWORD=<Enter_Email_Password>
JWT_SECRET_KEY=<Enter_Secret_Key>
CLOUDINARY_CLOUD_NAME=<Cloud_Name>
CLOUDINARY_API_KEY=<Api_Key>
CLOUDINARY_API_SECRET=<Api_Secret>
CLOUDINARY_FOLDER_NAME=<Folder_Name>
npm start
or
npm run dev