Case Study

schoolbored.ai – AI tools for students

An AI‑powered web app that helps students turn messy notes and deadlines into organised, actionable study plans.

Design engineeringProduct designNext.js / TypeScriptOpenAI

Role

Solo design engineer – responsible for product definition, UX, UI, and implementation.

Timeline

2024 – ongoing, nights and weekends.

Stack

Next.js (App Router), TypeScript, Tailwind, OpenAI APIs, Vercel.

Problem & context

University students juggle lectures, readings, assignments, and part‑time work. Most tools either feel too generic (plain note‑taking) or too rigid (full task managers) for the messy reality of student life. I wanted to see if AI could bridge that gap by turning unstructured inputs into concrete study plans.

Approach

Product & UX

  • Interviewed students to map how they currently track deadlines and revision.
  • Prototyped flows in Figma to keep input as low‑friction as possible (paste notes, upload info, type prompts).
  • Focused the initial release around a small number of high‑value jobs: summarising notes, generating practice questions, and creating revision schedules.

Engineering

  • Built the app with Next.js and TypeScript for fast iteration and good defaults.
  • Wrapped AI calls in a small utilities layer to make prompts testable and to handle rate limiting and failures gracefully.
  • Used streaming responses for longer generations so the UI stays responsive and students see progress immediately.

Technical highlights

  • Modular prompt builders that can be reused across different tools inside the app.
  • Client‑side state separated from server‑side AI calls, making it easier to test UI states without hitting the API.
  • Thoughtful empty/loading/error states so failures degrade gracefully instead of blocking students from working.

Outcomes

Early testers have used schoolbored.ai to generate revision plans and practice questions across multiple modules. The project is still evolving, but it already serves as a concrete example of how I approach product definition, UX, and implementation as a design engineer.