Mesa AI banner

Mesa AI

11 devlogs
41h 15m 3s

a next-generation AI-powered learning platform that cuts studying in half with reinforced learning. Clear doubts with chat mode, or learn topics easily wit guided study. Ensure you will never be caught off guard in the next exam by using AI to mak…

a next-generation AI-powered learning platform that cuts studying in half with reinforced learning. Clear doubts with chat mode, or learn topics easily wit guided study. Ensure you will never be caught off guard in the next exam by using AI to make flashcards, quizzes or practice tests!

This project uses AI

GitHub Copilot for debugging and solving pesky TypeScript problems. Also used auto completions to speed up typing :p (Not vibe-coded)

Qi An

Another notebook update

  • Actually made the notebook page show a list of notebooks (will be image instead of an orange box)
  • Solved tons of bugs, including sending the same files twice on every generation! Cut time down to about 30s as compared to 1min+
  • Polished up file selector UI
  • Added note length selector too!

Will work on chats next, including hopefully uploading files (need to find a way to do it)

Attachment
Attachment
Attachment
0
Qi An

Notebook is almost there!

Refactored most of the notebook code to better mirror the way i coded drive.

Also had to switch everything to new types, especially the new file type since files are linked to mesa drive now. Made sure the fundemental notebook functions still work (probably buggy)

  • Will update the mesa drive selector to be bigger and support more actions like uploading files directly.

Anyhow here’s a screenshot after 2 hours of editing like 20 files 😭

Attachment
0
Qi An

Oops, hotifx :p (for drive)

Forgot to make files class-specific! Also fixed/changed move item dialog:

  • Added creating folders
  • Fixed moving to root drive and moving to same place
  • Removed the ability to move to iself
  • Removed open from row actions (too buggy)

Also started working on the file selector that will be used by notebooks. Don’t have any screenshots yet though

Attachment
Attachment
0
Qi An

Mesa Drive is now done!

I should REALLY make more regular devlogs but here we go anyways:

Intention/Context

Mesa Drive allows users to easily organise all source material, such as class notes, slides, summaries, etc. Websites may come in the future.

These source materials will be in a many to many relationship with notebooks, flashcards and quizzes. Allows for sources to be renamed, moved, or deleted easily.

Full CRUD functionality

From the previous devlog, I’ve finished creating, reading, updating and deleting of folders and files. Folders are just 0 byte files, while files have a parentId linked to folder ids.

Will hopefully be able to add drag and drop at some point and also adding from Google Drive!

Next steps

Implement the new FileBrowser with notebook sources. This will be the first step into storing notebooks.
When files can be linked, notebooks storing can be done easier and lay the groundwork for the storing of chats, flashcards and quizzes.

** Nerdy details:**
Notebooks and files will be in a many-to-many relationship such that notebooks can have multiple files, and files can be linked to multiple notebooks.

Till next time :D

0
Qi An

Mesa.. Drive??

Laying the groundwork for Mesa Drive, which will store all the user’s notes, slides, and documents. These are real files, not the arbitrary library files like flashcards or quizzes.

  • Reworked the file system. Files are uploaded to R2, and an accompanying file row is added to files in the database.
  • This ensures that renaming or deleting files when they are eventually linked to topics won’t lead to any conflicts.
  • Also reduces calls to r2 which can get pricey!

Right now, only folder creation works. I’ll be working on uploading and actually navigating through folders in my next devlog.

Attachment
0
Qi An

Notebook, classes and topics

Forgive me, but I completely forgot about devlogging 😭.

Firstly, notebook

The past week,

  • I’ve added preliminary chat to the notebook, allowing you to ask questions about your sources.
  • Along with that, files are cached for 15 mins on Google’s servers. Initially it costs more, but due to the high frequency the files were be used by ai, it ends up being a cost saving!
  • Also added sick new animations to show topics being generated and automatically embedding images :)

Some concerns: It’s considerably slower than before. I’m still working on finding out why.
Since I was away from home, I forgot to link hackatime up and only realised when i was done (it took like 5 hours)

Classes

The temporary dashboard works now. Had to write an icon picker for Lucide with the help of AI (I’m being honest) cause i was really confused about what React-Window actually does. I made the search function myself, though!

Creating and deleting classes also works, along with a beautiful class sidebar that collapses to icons.

Topics

Again, only added creating and deleting topics. Can be done through the sidebar for now

Next steps

Linking notebook creation to classes and managing notebooks by class. May also want to link them to topics at some point.

Attachment
Attachment
Attachment
0
Qi An

Mesa Notebook isn’t just a mockup anymore! It works by uploading sources, then generating a summary. Only the summary notes works, tools are still wip.


The summary will be customisable in the next devlog, allowing users to adjust note length, focus on specific topics, or simply use natural language to describe exactly how the notes should be.

Right now, the notebook doesn’t save, but sources persist. Will be added to each subject’s dashboard once I get the tools to work.

Until next time! 🚀

Attachment
0
Qi An

The demo is now an AI notebook, inspired by NotebookLM from Google.

  • Users will upload sources such as class notes or slides
  • AI automatically generates a set of notes (might be editable, haven’t figured that out)
  • Users can use tools to make flashcards, podcasts that read out the notes, quizzes to test knowledge and finally chat to ask questions about the set of notes.
  • Ideally highlighting certain lines can also trigger the chat input.
    .
    Uploading sources works with Cloudflare R2, and that’s about all that works right now :( Will be working on the notebook panel next!
Attachment
0
Qi An

Worked on a temporary dashboard that currently displays mock data, and a test demo to figure out prompts before I actually work on the quiz UI.

Have to work around vercel’s serverless function payload limit preventing me from uploading files in production, so I’ll have to explore cloudflare r2 for that. Would likely be the base for the document manager later on!

Attachment
Attachment
0
Qi An

The start 🚩


This project was started to help students, like myself, cope with numerous content-heavy subjects.

Considering current LLMs’ rather incredible context length and reasoning skills, I found it is the best time create an “AI tutor” of sorts, as a gap between self-study and a real teacher. It is in no capacity meant to replace school or classes, but rather help students digest information effectively.

Goal setting

The goal for this project is to aid students in grasping content-heavy subjects by providing adaptive learning (challenges are generated on the fly to better suit each learner’s profile) and AI-powered memorisation tools like flashcards, quizzes, and practice tests.

By the end of this project, I hope to have created a low-cost yet powerful AI learning tool to better assist struggling students with fewer resources or heavier learning requirements.

Everything else

Anyways, here’s what I did in this devlog:

  1. Started the Nextjs project
  2. Linked a Neon database
  3. Set up better-auth authentication with email verification and sign up

I’ll be tackling sign in and a dashboard in the next devlog. Check the attachment for some Figma leaks!

Attachment
Attachment
0