
Day5 is a simple task management application designed around a weekly view (Monday-Friday + Weekend). It’s built to be straightforward and non-overwhelming, removing features like complex due dates and project nesting.
The key feature is its simplicity. It provides a visual, one-week-at-a-time planner that includes tasks, a habit tracker, and a notes section. This makes it ideal for individuals who benefit from a clear, uncluttered interface, such as neurodivergent individuals.
This section is for the administrator or developer setting up the Day5 application.
Server-Side:
Python 3.8+
A PostgreSQL Server
A Redis Server
An SMTP Email Server (for password resets and digests)
Python Libraries: fastapi, uvicorn, asyncpg, redis, pyjwt, bcrypt,
python-dotenv, aiofiles, jinja2.
Client-Side:
A modern web browser (e.g., Chrome, Firefox, Safari, Edge).
Setup and ensure your webserver can serve the files located in the public folder.
Ensure your PostgreSQL and Redis servers are running and accessible.
Install the required Python dependencies (e.g., pip install -r requirements.txt).
Set up the necessary environment variables (see Configuration section).
Run the application using a Uvicorn server:
uvicorn main:app --host 0.0.0.0 --port 8000
The API will be accessible at http://localhost:8000.
⚠️ Warning: If you choose to host the API and static web files on separate domains/machines/IPs, you will need to uncomment the CORSmiddleware section of the main.py script to include the necessary domains/IPs that the frontend are served from.
The application is configured using environment variables. Create a .env file in the project’s root directory.
database.
Example: postgres://user:password@localhost:5432/day5db
Example: redis://localhost:6379
authentication tokens.
SMTP_SERVER: The address of your email server.
SMTP_PORT: The port for your email server (e.g., 587).
SMTP_USERNAME: The username for your email account.
SMTP_PASSWORD: The password for your email account.
The Weekly Task View (Main Page)
This is the main screen of the application. It shows your week at a glance.
Adding a Task: Click the “Add Task” button at the bottom of any day’s card (e.g., Monday, Tuesday) to open a modal. Enter a title and optional description.
Completing a Task: Click the checkbox next to a task’s title. The task will be marked with a strikethrough.
Editing a Task: Click the pencil icon on a task to open a modal where you can change its title, description, or date.
Deleting a Task: Click the trash icon on a task.
Navigating Weeks: Use the arrow buttons at the top of the page to move to the previous or next week.
Habit Tracker
Located on the main page below the task view, the habit tracker helps you build routines.
Adding a Habit: Click the “+” button in the Habit Tracker header. A new row will appear. Type the name of your new habit.
Tracking a Habit: Simply click the checkbox for the corresponding day of the week to mark it as complete.
Deleting a Habit: Right-click on a habit’s title and confirm the deletion.
Weekly Notes
A simple notes section is available on the main page.
Taking Notes: Simply click into the text editor (labeled “Notes”) and start typing.
Saving: Notes are saved automatically a few seconds after you stop typing.
The “Lists” Page
This page provides a separate area for checklists, like grocery lists or packing lists, that aren’t daily tasks.
Creating a List: Type a name in the “New List Name” box and click the “+” button.
Adding Items: Click the “+” button on the list’s header to add a new item.
Re-ordering Items: Click and drag any list item to change its order.
Printing a List: Click the printer icon on a list’s header to generate a PDF of that single list.
Converting to a Task: Click the “Create Task” icon (checklist) on a list item to open a modal and add it to your main weekly task view.
Other Navigation Tabs
Agenda: This tab shows a simple, vertical list of all tasks for the currently selected week, grouped by “Pending” and “Completed”.
Notes: This tab shows all of your past weekly notes in a single view. You can click the printer icon here to print all your notes to a single PDF document.
Admin Panel
If you are an administrator, you will see an “Admin” tab. This page allows you to:
Manage Users: Create, edit, and delete user accounts.
View System Logs: See recent activity and error logs from the server.
View Feedback: Review all feedback submitted by users, including links to any screen recordings.
Check Health: See the live status of the API.
Submitting Feedback
You can submit feedback at any time.
Click the chat bubble icon in the bottom-right corner.
Type your feedback.
Optionally, click the thumbs up or thumbs down to rate your experience.
You can also click “Record Screen” to create a screen recording to visually explain your feedback.
Troubleshooting & FAQ
Q: I forgot my password. How do I reset it?
A: On the login page, click the “Forgot password?” link. Enter your email address, and if an account exists, you will be sent a password reset link.
Q: My notes didn’t save.
A: Notes save automatically every few seconds after you stop typing. If your internet connection is unstable, it may fail. Ensure you are connected before navigating away.
Q: How is the “Lists” page different from “Tasks”?
A: Tasks are tied to specific days in your weekly planner. Lists are separate, general-purpose checklists (like a grocery list) that are not tied to a date unless you specifically convert an item into a task.
Q: How does the Weekly Digest work?
A: This is an automated email sent out by the system administrator. It summarizes your task and habit completion statistics for the previous week to help you track your progress.