Inspiration

As students, we constantly juggle classes, work shifts, assignments, and personal time. Traditional calendars make it easy to overbook days or push planning off entirely. We wanted to build something that automatically creates a realistic plan and warns you when your schedule becomes unhealthy.

What it does

StudyFlow helps students generate a weekly schedule by combining fixed commitments with flexible tasks. Users can set personal limits, visualize daily stress levels, receive suggestions when days are overloaded, and reschedule tasks when plans change. The goal is to reduce burnout and decision fatigue.

How we built it

StudyFlow is a frontend-only web app built with React and TypeScript. All data is stored locally in the browser. The scheduling logic uses a deterministic, rule-based approach that prioritizes tasks by deadline and importance, placing them into available time slots while respecting user preferences like breaks and focus limits.

Challenges we ran into

Scheduling is a surprisingly complex problem. Balancing realism, flexibility, and simplicity without a backend or advanced optimization was challenging. Designing logic that felt helpful without being confusing required many tradeoffs, especially when handling task splitting and overloaded days.

Accomplishments that we're proud of

We’re proud of building a fully client-side scheduler that feels interactive and intuitive. Features like stress indicators, suggestion prompts, drag-and-drop rescheduling, and task-splitting controls helped turn a simple scheduler into a thoughtful planning tool.

What we learned

We learned how quickly scheduling logic grows in complexity and how important clear visual feedback is for productivity tools. We also gained experience designing user-first features under hackathon time constraints while keeping the system reliable and explainable.

What's next for StudyFlow

Next, we’d like to introduce smarter scheduling logic using constraint optimization or AI-assisted suggestions, add deeper personalization, and move the scheduling engine to a backend so the app can scale beyond a simple MVP.

Built With

Share this project:

Updates