DEV Community

Cover image for Redis x Dev Hackathon 2022 - The Submission ✅
Mohamed Asif Iqbal
Mohamed Asif Iqbal

Posted on • Updated on

Redis x Dev Hackathon 2022 - The Submission ✅

Overview of My Submission -

I built a "To Do" App using the Django-Python framework with Redis as primary database using Redis OM. The user models are implemented using the default SQLite3 database on Django to utilize the advantages of its built-in User Creation & Authentication modules.

Also, implemented elements of Bootstrap5 and Crispy Forms for basic beautification of the app.

Features -

• A “To Do” webapp which lets you create lists and tasks associated with the lists.
• Every list and task created is tied to a user account.

Architecture -

Image description

Data Models -

List Data Model

username: string type -> indexed
list_name: string type

Task Data Model

list_pk: string type -> indexed
task_name: string type
task_complete: Optional boolean type

My first hackathon ended up being a great learning experience. I look forward to more such events on Dev. Cheers :)

Submission Category:

Wacky Wildcards

Language(s) Used:

Python, HTML5,

Framework(s) Used:

Django

Database(s) Used:

SQLite3, Redis

Link to Code:

GitHub logo Asif-GD / a-django-to-do-list

To Do List to explore the Python-Django framework

A To Do List

A "To Do List" web-app created using Python-Django framework, and Redis as a primary database using Redis OM for Python.

App Screenshots

/home

image

/login

image

/register

image

/lists

image

/tasks

image

Data Models

  1. List Data Model

    • username: string type -> indexed
    • list_name: string type
  2. Task Data Model

    • list_pk: string type -> indexed
    • task_name: string type
    • task_complete: Optional boolean type

How it works

  • The web-app uses SQLite3, the default django database for storing User models. I chose to do this in order to utilize the built-in django modules for User Creation & Authentication.
  • The primary database is Redis with data models implemented using Redis OM in Python.
  • The To Do Lists created by the user are tagged to them via their username and can be retrieved, hence the username field is indexed.
  • The Tasks are tagged to the list by retriving the list's primary key and storing it along with the…

Additional Resources / Info:

Bootstrap5 -

Introduction · Bootstrap

Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with jsDelivr and a template starter page.

favicon getbootstrap.com

Django Crispy Forms -


Top comments (0)