Skip to content

Latest commit

Β 

History

History
102 lines (76 loc) Β· 2.04 KB

File metadata and controls

102 lines (76 loc) Β· 2.04 KB

πŸ“š FocusFlow β€” Student Productivity & Learning Tracker

FocusFlow is a full-stack productivity web application built to help students manage tasks, notes, and daily progress in one place.
It includes secure authentication, user-specific data, and a clean dashboard overview.

This project was built as a structured learning project to gain hands-on experience with full-stack development.


✨ Features

πŸ” Authentication

  • User registration and login
  • Password hashing using bcrypt
  • JWT-based authentication
  • Protected backend routes

πŸ“‹ Tasks

  • Create, view, update, and delete tasks
  • Mark tasks as pending or completed
  • Optional due dates
  • Tasks are user-specific and secure

πŸ“ Notes

  • Create and delete notes
  • Store ideas, reminders, and thoughts
  • Notes are private to each user
  • Dashboard preview of recent notes

πŸ“Š Dashboard

  • Overview of total tasks
  • Pending vs completed task count
  • Completion percentage
  • Notes summary

🎨 UI & UX

  • Clean, minimal UI using Tailwind CSS
  • Responsive layout
  • Reusable React components
  • Clear loading and empty states

πŸ›  Tech Stack

Frontend

  • React (Vite)
  • Tailwind CSS
  • React Router DOM

Backend

  • Node.js
  • Express.js
  • PostgreSQL
  • JWT (jsonwebtoken)
  • bcrypt

πŸ“‚ Project Structure

frontend/ β”œβ”€ src/ β”‚ β”œβ”€ components/ β”‚ β”œβ”€ pages/ β”‚ β”œβ”€ App.jsx β”‚ └─ main.jsx

backend/ β”œβ”€ controllers/ β”œβ”€ models/ β”œβ”€ routes/ β”œβ”€ middlewares/ β”œβ”€ server.js └─ .env


Testing & Debugging

  • Manual API testing using Postman
  • JWT verification testing
  • Error handling for invalid tokens
  • UI testing for loading and empty states

Learning Outcomes

Through this project, I learned:

  • Full-stack architecture (models, controllers, routes)
  • Secure authentication flows
  • PostgreSQL schema design
  • React state management and side effects
  • Debugging real-world issues
  • Building production-style features step by step

Acknowledgement

Inspired by student productivity tools and Notion-style workflows.