Skip to content

DaveTron4/taskmate-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TaskMate AI

CodePath WEB103 Final Project

Designed and developed by: Htet Htwe & David Salas Carrascal

🔗 Link to deployed app: TaskMate AI

About

Description and Purpose

TaskMate AI is a smart productivity and scheduling web app that helps students stay on top of classes, emails, and personal tasks, all in one place. The app connects to Canvas, Gmail, and Google Calendar via Composio to automatically gather assignments and events, then uses AI to organize and prioritize them.

It’s designed for students juggling academics, part-time jobs, and extracurriculars, offering an intelligent dashboard that learns from user habits and adapts over time.

Inspiration

As a full-time student, balancing deadlines from multiple classes and keeping track of meetings or counselor appointments can be overwhelming. I wanted to build an app that eliminates the mental load of remembering every due date or email reminder.

Tech Stack

Frontend: React + Next.js, TypeScript, Tailwind

Backend: Express, PostgreSQL, Render, Composio

Features

✅ Task Prioritization

Analyzes all imported tasks and deadlines using AI to suggest what to focus on next — helping students stay productive without feeling overwhelmed.

Task Prioritization

✅ Smart Schedule Dashboard

Displays all assignments and events in a clean, color-coded weekly view that updates in real time whenever new data is synced.

Smart Schedule Dashboard

✅ AI Email Summarizer

Scans the user's Gmail inbox for important messages (like from professors) and displays brief, AI-generated summaries directly in the dashboard, highlighting key action items.

Ai Email Summarized

✅ Dashboard Filtering

Allows users to filter the task list and calendar view by category (e.g., "School," "Personal") or by source (e.g., "Canvas," "Gmail") to focus on one area at a time.

Dashboard Filtering

✅ Integrate Composio

Connect the application to third-party tools and APIs using the Composio platform.

Integrate Composio

✅ Toast Alerts

Show pop-up notifications (toasts) to provide brief feedback to the user (e.g., "Task saved successfully!").

Toast Alerts

✅ Disable Buttons After Click

Prevent users from accidentally submitting a form or action multiple times by disabling the button after the first click.

Disable Burrons After Click

✅ Implement Spinners

Display a loading spinner or indicator to show the user that data is being fetched or an action is processing.

Implement Spinners

✅ Set up GitHub OAuth

Allow users to log in or authenticate with the application using their existing GitHub account.

GitHub OAuth

✅ Graceful Error Handling - Backend

Implement a robust system on the server to catch, manage, and send clear, helpful error messages to the client instead of crashing.

Graceful Error Handling

✅ On Page Interaction - Frontend

Develop the core user interface interactions, such as clicking buttons, filling forms, and having the page update dynamically without a full reload.

On Page Interaction

✅ Redirect - Frontend

Automatically navigate the user to a different page after a specific action (e.g., redirecting to the dashboard after a successful login).

Redirect

✅ Reset Database Function - Backend

Create a special backend function or endpoint to clear and reset the database to a default state, which is useful for testing.

Dabase Reset

✅ Deploy on Render

Configure and deploy the entire full-stack application (both frontend and backend) to the Render hosting platform to make it live on the web.

Deploy on Render

✅ Create Dynamic Routing - Frontend

Set up client-side routing to handle dynamic URLs, such as viewing a specific item by its ID (e.g., /tasks/123).

Dynamic Routing

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors