Poll website task

Using provided templates, develop the poll site

User’s stories:

  1. Site visitor enters a question, unlimited count of possible answers (at least two) and presses [start] button to begin voting.

    HTML code example 1

  2. Each poll has its own homepage addressed by a secret unique URI. After "start" button press browser redirects to poll home page. Users can copy-paste this link to send it to others and invite them to participate.
  3. To vote a person should enter his/her name (mandatory), select a prefered option and submit his decision. It is possible to vote only once for a person using one browser. In the bottom of page there is voting results table, refreshed in real time. When a person makes his decision, all participants should see this in the results table.

    HTML code example 2

Requirements:
  1. Don't use any frameworks
  2. Use PHP or Node.js

So, we're not interested in your knowledge of particular framework and its internal rules like Symfony, Yii, Laravel / Vue.js, Angular etc. Please don't use it. However you may precisely choose a package or library as a tool for any aspect of this task, like React, webpack, web sockets, Twig, PDO, mongoose and so on.


Nice to have:
  1. Support of all modern browsers
  2. Tests

Expected result:
  1. Source code
  2. System requirements and installation instructions on our platform, in English.