Skip to content

Latest commit

 

History

History
18 lines (15 loc) · 1.09 KB

Readme.md

File metadata and controls

18 lines (15 loc) · 1.09 KB

Voting system made with Django Rest Framework and Vue.js

This repository is a monorepo for fullstack application written in VueJS and Django,
This application has example of all CRUD operations, Authentication (using 1. username/password 2. google account (firebase) 3. web3 auth using Metamask),
Authorization (any object can be edited only by its creator), and IP based protection to limit each user for only one vote per subject, Pagination

This repo includes the best practices for running both the frontend and backend in production, its running the API (Django Rest Framework) using Gunicorn and use Nginx as proxy to the wsgi and serving media and static files like stylesheets

This platform works as follow:

  1. in order to create new poll you need to register and be logged in
  2. once you published poll everybody that logged in can vote for it but just single time (enforced via IP detection)
  3. only the publisher of the poll can delete it

Run the app

docker compose up
drf_vue_compressed.webm