Why I Built Stride
I had used Microsoft To-Do, Apple Reminders, TickTick, and numerous other task trackers and they never stuck for me. I realized that I was changing due dates, not capturing comprehensive detail, or not reviewing the to-do lists when I actually needed to take action.
​
As a data and analytics professional, I wanted to understand:
-
Why do some weeks feel effortless and others impossible?
-
Do certain types of tasks drain more energy than others?
-
Is having a backlog the real productivity killer?
-
Does my stress impact my sleep / recovery?​​
​​
I built my data model and my feature set around capturing enough data to prove out the below productivity cycle:
​

Features & Pages
All features are built using React (Next.js), hosted on Azure Static Web Apps, with an Azure backend and authentication.

Dashboard
Purpose:
The Dashboard page is my central workspace for managing tasks, habits, and events. It allows me to view my workload, track progress, filter by categories, and interact with individual items (create, edit, complete, reorder). It combines high-level productivity stats with detailed task boards to give me a balance of oversight and control
Objectives:
​
-
Visibility: Provide a quick overview of today’s commitments, completions, and remaining work.
-
Actionability: Enable add, edit, complete, and reorder tasks directly from the dashboard.
-
Organization: Allow filtering and grouping by categories and subcategories for contextual work planning.
-
Efficiency: Highlight “low-hanging fruit” (short tasks) to encourage quick wins.


Calendar
Purpose:
The Calendar page provides a time-blocking and scheduling workspace for Striide. It combines backlog tasks with a calendar grid, allowing me to drag tasks into specific time slots, view scheduled vs. unscheduled items, and persist those placements to external calendars. It helps me plan my day/week, balance workload, and track scheduled commitments (outside of the application).
Objectives:
​
-
Visibility: Show both backlog items and scheduled events in one view.
-
Control: Allow drag-and-drop scheduling, rescheduling, and unscheduling of tasks.
-
Persistence: Sync all schedule changes (create, update, delete placements) with the backend.
-
Flexibility: Support single-day and multi-day views.
-
Clarity: Provide visual overlays of scheduled tasks and busy blocks for context.

Insights
Purpose:
The Insights Page provides users with analytics across tasks, habits, and categories. It aggregates data from the backend stored procedures and visualizes trends with charts. Its purpose is to help me understand where my time goes, how efficiently I earn points, and how behaviors trend over time
Objectives:
​
-
Visibility: Give users a 360° view of productivity across categories, priorities, and time.
-
Motivation: Reinforce progress through fun/motivational stats (quick wins, streaks).
-
Behavioral Awareness: Highlight deadline behaviors, lag times, and overdue trends.
-
Forecasting: Show expected upcoming workload.
-
Control: Allow filtering by category and adjusting date ranges


Journal
Purpose:
The Journal page provides a daily reflection space split into Morning and Evening entries. It allows me to set intentions, track readiness, and record reflections, while in the evening it captures mood, stress, follow-up on intentions, and lifestyle/health “quick flags.” It connects behavioral journaling with sentiment analysis and structured tags (alcohol, eating out, exercise, etc.), building a richer dataset for insights and habit correlation
Objectives:
​
-
Reflection: Encourage intentional starts (morning) and thoughtful wrap-ups (evening).
-
Tracking: Record structured lifestyle and health flags for later analytics.
-
Awareness: Highlight whether users met their morning intention in the evening.
-
Motivation: Provide smart recommendations (e.g., reminders about best journaling times).
-
Data Enrichment: Capture sentiment scores for deeper correlations with tasks and recovery.
