Skip to content

App Feature List

Tarun Aditya Thurlapati edited this page Apr 24, 2020 · 1 revision

What this app can do:

  • Create, Read, update and delete Lists and the tasks contained in them (CRUD Operations)
  • It is cross-platform since it works wherever there is a python Environment and a web interface (browser), and data can be saved and imported as required on various platforms.

Tools and frameworks in python

All tools & frameworks that we use have been listed here:

  • HTTP Server from python standard libraries (import http.server)
    we use it to run the web server to interact with the app in a web based interface. (There is no command line based interface)
  • SQLite (import sqlite3):
    We use it to interact with raw .db files, where we can store data, when the app is shutdown. The data can then be imported once the app is started again so that you don't lose your ToDo data
  • pathlib (from pathlib import Path)
    We use this library to get path objects and use them to access files based on their absolute address w.r.t the system.
  • OS module (import os):
    We use this library to get the path of the directory we are present in.
  • Sys module (from sys import exit as ExitProgram):
    To exit the program programmatically, rather then the Ctrl+D command.
  • Setuptools (from setuptools import setup):
    This app also implements pip install, so that you can easily install the app from anywhere on the internet connected world

Python Features Used in the app:

  • List manipulation (edit, add and delete items)
  • Classes and functions
  • exceptions
  • loops
  • files
  • string manipulation
  • Basic python server - http.server

More details:

It uses the MVC (model-view-controller) architecture.
It has an interactive web UI written purely in HTML, CSS and JS with Ajax to make requests to the server.
No web server framework or web design framework was used