Skip to content

acmesquita/make-your-poll

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Make your poll

System to generate your poll 🚀.

Requeriments

  • 1 - A user can come to the webpage and create a new poll.
  • 2 - The user should be able to specify a title for the poll, a brief description, and a list of options.
  • 3 - After the poll is created, the user should be able to edit the poll, and modify anything they specified originally.
  • 4 - After the poll is created, the user should be able to share their poll with their friends. This can be as simple as generating a link that they can have other people go to to respond to the poll.
  • 5 - The user should be able to view a graph of the responses to their poll.
  • 6 - A user responding to a poll should be able to edit their response. (You do not need to authenticate users attempting to edit responses)
  • 7 - A user should be able to create an account that they can authenticate to with a username and password.
  • 8 - The only information you need is a username and password. If email addresses are usernames, you do not need to validate the email address.
  • 9 - Passwords must be securely stored.
  • 10 - Rate-limiting of authentication requests and account lockout do not need to be implemented.
  • 11 - A user should be able to associate all of their previously created polls with that account.
  • 12 - The user, when authenticated, should be able to view all of the polls associated with their account.
  • 13 - The user should be able to require all respondents to their polls authenticate before being able to respond to the poll.

Extras

  • Close a poll. The user to create a poll can finish a poll and nobody can access to answer.
  • Shows the adherence of responses over the days through a graph on a poll's viewing screen

Technologies

  • Ruby on Rails - backend api
  • NextJS - frontend

Getting Started

In this project to be using docker and docker-compose to up applications.

Build project

docker-compose build

Initilize Database

docker-compose run --rm api bundle exec rails db:create
docker-compose run --rm api bundle exec rails db:migrate

Runnig tests

docker-compose run --rm api bundle exec rspec

Running projects

docker-compose up

If all that's rigth, you having a database, an api and a web running. For try access:

Previews

Answer poll

Peek 01-04-2022 14-43

Manager poll

Peek 02-04-2022 20-03