Inspiration

Students are given deadlines, timetables and marking rubrics, but they are still left to answer the difficult part themselves:

How much work does this assignment actually deserve, and where does that work fit into my real week?

Calendars know when you are busy. Task managers know what you need to do. Neither understands the academic workload behind an assignment.

PlanAround connects the two.

I wanted AI to remove the tedious part – interpreting messy timetable layouts and assignment briefs – without asking an LLM to make important planning decisions that a student cannot understand or verify.

The result is a hybrid system. AI understands the input. Deterministic logic builds the plan.

What it does

A student starts with the information they already have.

They can upload a timetable screenshot or PDF, and PlanAround extracts the classes into an editable calendar. They can then add recurring commitments such as work or the gym, plus one-off events.

Next, they paste or upload an assignment brief as text, an image or a PDF. AI extracts the deadline, assessment weighting, rubric tasks, marks and requirements into a structured draft.

Nothing the AI extracts is automatically accepted. The student reviews it first.

Once the information is confirmed, PlanAround calculates the assignment's recommended workload using module credits, assessment weighting and rubric structure.

It then schedules focused study sessions into the student's actual free time while respecting:

  • classes and commitments,
  • other assignments,
  • preferred study days and hours,
  • preferred session length,
  • daily study target,
  • preferred time of day,
  • and the assignment deadline.

The plan is not static.

If the student's timetable, commitments, assignment or study preferences change, PlanAround detects that the existing schedule is outdated. It explains why, previews what a replan will replace, preserves completed work, and reschedules only what remains.

This means the planner can respond to real student behaviour instead of generating a timetable once and becoming obsolete.

How I built it

PlanAround deliberately separates AI interpretation from planning decisions.

AI interpretation

Timetable screenshots and visually complex PDFs are interpreted with Qwen3-VL through Featherless.

Assignment briefs can be supplied as pasted text, screenshots or PDFs.

PDFs are processed locally in the browser first. If useful text is embedded in the document, PlanAround extracts it directly. Scanned or visual PDFs are rendered locally and sent through the same vision-analysis pipeline as screenshots.

Raw PDF files are not sent directly to the model.

The production frontend calls a Cloudflare Worker, which keeps the Featherless API key server-side and handles request validation, rate limiting and model communication.

Model output is validated and returned as an editable draft.

Deterministic planning

After AI has turned messy input into structured data, the model leaves the decision-making process.

TypeScript logic calculates workload, finds available time, generates study sessions, detects stale plans, calculates remaining work and explains replanning changes.

This was an intentional design decision.

An LLM could generate a plausible-looking calendar, but it would be difficult for a student to know why it chose 12 hours instead of 20, why one task received more time than another, or whether regenerating the plan silently discarded completed work.

PlanAround makes those decisions reproducible and explainable instead.

Challenges I ran into

The hardest challenge was deciding where exactly AI should fit in.

Using AI for the entire scheduling pipeline would have been simpler, but less trustworthy. Separating interpretation from planning required building deterministic workload, scheduling, progress and replanning systems around the model.

PDF handling was another challenge because academic documents are inconsistent. A lecturer's PDF might contain clean selectable text, a complicated visual layout or only scanned pages. PlanAround now chooses between local text extraction and visual analysis instead of treating every PDF the same way.

Adaptive replanning was also much more involved than generating another schedule. Completed work has to remain completed, obsolete future sessions must stop reserving time, other assignments must keep their valid sessions, and only the correct task's completed work should reduce its remaining workload.

Accomplishments that I'm proud of

I am most proud that PlanAround uses AI where it adds real value without turning the rest of the application into an AI black box.

Students do not need to manually type every timetable entry or transcribe every marking criterion before the planner becomes useful.

At the same time, workload and scheduling remain explainable.

The finished application can:

  • understand real timetable and assignment documents,
  • calculate workload independently of the AI model,
  • schedule multiple assignments without invalid overlaps,
  • track completed work,
  • detect when a plan is outdated,
  • explain what changed,
  • preview a replan,
  • and rebuild only the remaining work.

The AI is therefore not a chatbot bolted onto the product. It removes the largest input barrier to a planner whose core behaviour remains predictable and trustworthy.

What I learned

The main lesson was that meaningful AI integration does not have to mean giving AI control over everything.

For PlanAround, AI is most valuable at the boundary between messy human information and structured software data.

Once that information is structured, conventional deterministic algorithms are often a better tool for decisions that need to be reproducible and explainable.

I also learned a lot about multimodal document analysis, PDF processing, output validation, constrained scheduling, responsive calendar design, local-first data storage and deploying a separate frontend and AI backend.

What's next

The next step would be optional account-based sync so a student can move seamlessly between laptop and phone while retaining the current local-first mode.

I would also like to add university calendar and LMS integrations, true background push reminders, semester-wide workload balancing and richer long-term progress insights.

The core principle would remain unchanged:

Use AI to understand messy input. Use deterministic logic for decisions that should be explainable.

Built With

Share this project:

Updates