Inspiration

Real-life notes are rarely neat task lists. They are usually a mix of reminders, appointments, unfinished thoughts, and things we need to remember.

I wanted to explore whether AI could turn messy everyday notes into a useful starting plan without making assumptions, inventing responsibilities, or adding deadlines that weren't actually provided.

My goal was to create something simple and approachable that could help someone feel less overwhelmed and figure out where to begin.

What it does

Turn the Mess Into a Plan takes scattered notes and organizes them into three main sections:

  • Suggested Priority — identifies one task to focus on first when the notes provide enough evidence. If the priority is unclear, the app says so instead of guessing.
  • Task Checklist — extracts identifiable actions into a checklist, preserving the original deadline wording. Users can check off completed tasks and uncheck them when needed.
  • Needs Attention — highlights missing information, conflicting deadlines, or uncertainty that should not be ignored.

The app also handles notes that contain no identifiable tasks without inventing work for the user.

Users can edit their notes and generate a fresh plan, or select Clear / Start Over to reset everything. Checklist changes happen immediately without additional AI requests.

The design is intentionally simple, with a clean layout that works on desktop and smaller screens.

How I built it

I rebuilt this application from scratch for the Build With AI: Basics challenge, following the Devpost Learn Skill Pack through project scoping, requirements, technical planning, development, testing, and submission preparation.

The application uses GLM-5.3-Flash through Nebius Token Factory to interpret the submitted notes and return structured JSON.

Instead of automatically trusting the model's response, the application validates the returned data before displaying a plan.

The validation checks the required structure, task references, supporting excerpts, and deadline wording against the original notes. These safeguards help catch unsupported information, although they cannot guarantee perfect interpretation of every possible input.

The front end uses HTML, CSS, and vanilla JavaScript. The server uses Node.js with built-in HTTP handling and custom validation, without Express, Ajv, or additional runtime packages.

The application keeps the Nebius API key on the server rather than exposing it in the browser. I also included request limits, timeout handling, and protections against outdated responses changing the screen after a user starts over.

Challenges I ran into

One of my biggest challenges was getting the application to distinguish actual tasks from background information.

For example, someone might write:

"Buy groceries tomorrow. Pay the electric bill by Friday, but I don't know how much I owe."

The application needs to identify both actions, preserve their deadlines, and recognize that the electric bill amount is missing.

Another challenge involved conflicting deadlines. If someone's notes mention different due dates for the same task, I wanted the application to preserve that uncertainty rather than silently choose one date.

I also worked through real API integration problems, including authentication and finding the correct Nebius endpoint for the selected model.

During browser testing, one request returned an HTTP 502 error. The application preserved the original notes and displayed a friendly error message. Although the exact cause wasn't established, the experience reinforced the importance of safe failure handling.

Finally, I had to make sure that clearing or regenerating a plan couldn't accidentally bring back an outdated result. I implemented cancellation and request-tracking protections and verified their behavior using simulated delayed responses.

What I learned

The biggest lesson was that generating an AI response is only one part of building a useful application.

I learned about writing clearer requirements, defining what the application should and should not do, validating structured AI responses, protecting API credentials, and testing realistic situations.

The rebuilt application previously passed 111 automated tests, along with nine controlled live AI scenarios. I also completed browser reviews, including testing at a mobile-sized screen width.

These tests provide evidence for the behaviors I checked, but they don't guarantee that every possible AI interpretation will be correct.

I also learned something important about working with AI coding agents: next time, I would define the project requirements earlier, before development begins.

Following the Learn Skill Pack helped me work through the project in smaller, more manageable stages and understand how the different pieces fit together.

What's next

I'd like to continue testing the application with different writing styles and more complicated everyday notes.

I'm also interested in exploring a hosted version so people could try it without installing anything locally, while maintaining appropriate security, privacy protections, and API usage controls.

For now, this project is a working local proof of concept that demonstrates how AI can turn scattered thoughts into a clearer place to start.

Built With

Share this project:

Updates

Submission history