Skip to content

Application that originally started out as a to do program, is extended to a reminder app hosted on a raspberry pi

Notifications You must be signed in to change notification settings

NickT5/reminder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RMNDR

RMNDR is an application to remind me what tasks I have to do. The user can add, edit, delete and change the status of the tasks which are stored in a database. A python script sends the user an email every day with all the uncompleted tasks. Authentication is also implemented. The web application is build with Flask, SQL, HTML, CSS, Bootstrap and runs on a Raspberry Pi.

Note: The first version of this project was a To Do application run on Heroku which is a platform to build, run and operate apps entirely in the cloud. The old version is still up (it takes a couple of seconds to spin up the application). Click here to check it out.

How to run the app locally

1. Install the dependencies

Install the necessary dependencies by using requirements.txt .

pip install -r requirements.txt

2. Create a database

Run the following commands in the terminal.

python3
from app import db
db.create_all()
exit()

To delete the database you can call the drop_all() function.

python3
from app import db
db.drop_all()
exit()

3. Add a user

Call the add_user.py script and follow the instructions to add a user.

python3 add_user.py 

4. Mail functionality

For the mail functionality a gmail account is required. Save the gmail address and password as environment variables in .profile file:

nano ~/.profile
export EMAIL_USER=<email address>
export EMAIL_PASSWORD=<password>

Add a crontab to execute the notify.py script whenever you like. I chose 09:00 every day. Helpful tool: crontab.

0 9 * * * . $HOME/.profile; ~/Documents/todo_platform/venv/bin/python3 ~/Documents/todo_platform/notify.py

5. Run the web application

python3 run.py

6. Enter the web application

The application runs on <machine's ip>:5000 e.g. 127.0.0.1:5000. The index page will show an unauthorized message. Go to /login.

127.0.0.1:5000/login

About

Application that originally started out as a to do program, is extended to a reminder app hosted on a raspberry pi

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published