The database was created using Postgres and will hopefully be hosted on Vercel soon. It is comprised of 3 tables.
user_id | username | password | completed_reminders | total_reminders | |
---|---|---|---|---|---|
1 | example | password | example@email.com | 2 | 6 |
user_id
: A unique id for each user. This connects the user to their reminders.
username
: The users username.
password
: The users password.
email
: The users email.
completed_reminders
: The total number of reminders the user has completed during the lifetime of the account.
total_reminders
: The total number of reminders the user has created during the lifetime of the account. This includes completed and deleted reminders.
reminder_id | user_id | title | date | completed |
---|---|---|---|---|
1 | 1 | Example reminder | 2024-01-01 | false |
reminder_id
: A unique id for each reminder. This connects the reminders to the work_on_dates
table.
user_id
: A unique id for each user. This connects the user to their reminders.
title
: The title of the reminder.
date
: The date of the reminder.
completed
: Status of the reminder (complete/incomplete)
reminder_id | date1 | date2 | date3 |
---|---|---|---|
1 | 2024-01-01 | 2024-01-02 | 2024-01-03 |
reminder_id
: A unique id for each reminder. Connecting the reminder to the list of dates.
date
: List of dates connecting to the reminders for additional working on dates.
Command | Description |
---|---|
init | Initialize reminder system files. (This only needs to be run once) |
add | Add a reminder to list. You will be prompted for a title, date, and optional 'work on days'. |
complete | Mark or unmark reminder as completed. |
view | Print your reminders. |
help | Displays all commands and descriptions available. |
The user will be prompted to enter reminder. If the user uses the keyword on
followed by the date of when the reminder should be, the reminder will be added to that day. You may use semantic dates (today, Monday, Tuesday, etc.) or numerical dates (1/1/24, etc.) when entering the date. If the keyword on
is not used, the user will be prompted to insert a date. If the user decides to cancel adding the reminder, simply press enter with a blank prompt. If on the beginning reminder prompt, the task will exit. If on the secondary date prompt, the user will be prompted again saying "✘ You must enter a date (Press enter again to cancel add).". Press enter again and the task will be exited without adding the reminder. If the reminder was successfully added to your reminder list, a success message reading "✔ Successfully added reminder to list." will be displayed. If any errors occur, the user with be notified accordingly.
Work on Days Coming Soon!
Your reminder list will be displayed. At the top, it displays the current day of the week and the date. Below the line, each day of the current week will be displayed.
If there are any overdue reminders from previous week, there will be a 0 Past section displayed. If there are any reminders in the future from the current week, there will be a 8 Future section displayed. Each day of the week has a number next to the name (i.e. 1 Sunday).
Each reminder is categorized under the day that the reminder is due and displays four fields.
1 Example Reminder 1/1/2024 [ ]
This number signifies a unique identifier for each day. This is used when marking reminders complete (see complete).
1 Example Reminder 1/1/2024 [ ]
The title of the reminder.
1 Example Reminder 1/1/2024 [ ]
The date the reminder is due. This value determines where the reminder is categorized.
1 Example Reminder 1/1/2024 [ ]
Status of the reminder. If the reminder is incomplete this will display as [ ]. If the reminder has been completed, this will display as [x] and will be greyed out.
The heading (containing the current day and the week and date) as well as the current day in the week in the section below are colored yellow signifying it is the current day. The rest of the days in the week are colored blue as headings.
The reminders can be three colors: white, grey, or red. A white reminder is a reminder that is currently active and not overdue. A red reminder shows that the reminder is overdue. A grey reminder is a reminder that has been marked completed. Any completed reminders will be deleted automatically when they are past the current week.
Gives the ability to mark or unmark a reminder as completed. This feature takes two arguments.
rem complete [category name/number]
[reminder number]
The category name or number determines what day or category the reminder wanting to be marked is apart of. This can be a category title (i.e. Monday, Past, Future, etc.), a semantic date (Today), or numerical date (i.e. 1/1/24).
rem complete [category name/number] [reminder number]
The reminder number is a unique number found on the left side of the title while using the
view
command (see view). This number specifies which reminder within the category chosen will be marked complete or incomplete.