From 56be006d8b0cb168a27fc9f53f950ef8b459094e Mon Sep 17 00:00:00 2001 From: Guy Davis Date: Sat, 2 Mar 2024 14:44:12 +1300 Subject: [PATCH] [guivis/KeepPolling#1] - Initial Setup for repo - Requirements file for required packages --- .gitignore | 1 + README.md | 24 ++++++++++++++++++++++++ requirements.txt | 4 ++++ 3 files changed, 29 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..62c8935 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea/ \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..3f0f500 --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +Task Overview: + +Objective: Develop a basic prototype of an online voting system where a member casts a vote and the system checks against a list of eligible members to ensure they are allowed to vote and restrict them to a single vote. + +Components of the Task: + +System Design: +Design the architecture of the voting system including data models and system components. +Document the system design briefly, outlining key components such as the front-end interface, back-end services, and the database schema. +Coding: +Develop a simple front-end interface where members can cast their vote. This can be a basic web form capturing the vote. +Implement back-end logic in a chosen programming language to process the vote, including checking against a list of members to verify eligibility. +Write code to ensure that each member can only vote once. +Database Management: +Create a simple database schema to store member information and votes. +Write a database query to check if a member is eligible to vote and to record the vote. +Security Implementation: +Discuss or implement basic security measures to protect the voting process and member data. +Version Control: +Use a version control system like Git to manage the code for the task. Provide access to the repository so that the interviewers can review the commit history. +Testing and Quality Assurance: +Develop basic unit tests or integration tests to ensure the functionality of the voting process. +Documentation: +Provide brief documentation on how to set up and run the system, including any necessary steps to install dependencies or configure the environment. diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..c9a2ad7 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,4 @@ +Django==5.0.2 +gunicorn==21.2.0 +whitenoise==6.6.0 +whitenoise[brotli] \ No newline at end of file