quickanban
Web Application Assignment - CS162
Table of Contents
Layout
Kanban Functionality
Headers
- To Do
- Doing
- Done
Features
- Creating a new task.
- Moving tasks to different states.
- Deleting tasks.
- Editing tasks.
- Blank tasks aren't accepted.
- User system (Sign Up/Login/Logout) with restrictions (i.e. password > 6 characters).
- Email validation check.
- SHA256 hash password protection.
- Task organization by most recent edit.
- Personalised board with date.
Project Structure
./.DS_Store
./requirements.txt
./__pycache__
./__pycache__/app.cpython-37.pyc
./README.md
./.gitignore
./static
./static/favicon.ico
./static/navbar.css
./static/kanban.css
./static/signin.css
./app.py
./templates
./templates/update.html
./templates/index.html
./templates/login.html
./templates/board.html
./templates/signup.html
./test.db
Installation Guide
Create a vitrual environment to install our packages (venv):
python3 -m venv venv
Just type into your command line (while in the project's root directory):
source venv/bin/activate
pip3 install -r requirements.txt
export FLASK_APP=app.py
flask run
To Reset the Database
Go into your directory. In terminal, type
sqlite3 test.db
.tables
.exit
Then open Python and populate the database with columns.
python3
from app import db
db.create_all()
exit()
Login
There is already a pre-made account in the database with the following details: Username: username Password: password
References
For the login system, https://github.com/PrettyPrinted/building_user_login_system was very helpful.