You are browsing as a guest. Sign up (or log in) to start making projects!

ng_qi_an

@ng_qi_an

Joined May 31st, 2026

  • 14Devlogs
  • 2Projects
  • 1Ships
  • 18Votes
Working on Mesa AI !
Open comments for this post

1h 18m 35s logged

Chat design! 💬


  • Added some fresher animations, and made a mock chat message UI. 📖
  • Right now, it’s showing some demo messages.
  • AI-sdk is already implemented, just need to link to a provider (might consider hackclub-ai) 🤖
  • Also tidied up some code, and made the whole page move with the sidebar as compared to before when it was floating. ✨

Check out the vid! 📹

0
0
10
Open comments for this post

1h 41m 9s logged

Animations & Chat


  • Added the chat creation flow! For this, I used a new library called Dexie, which makes Indexed DB easier.
  • I’ve never tried storing data in Indexed DB before, so this is pretty cool! Chats are also kept locally for security :)
  • Theres a new Sidebar button as well, popping out with a neat animation.

Going to work onto making the Chat UI design and the actual ai flow

0
0
11
Open comments for this post

1h 50m 24s logged

Introducing: Surf! 🏄

A better way to surf the web ✨


  • I’ve always wanted to design a custom new tab, and what better way to do so than this mission!
  • Recently, I came across Dia browser, and it’s really solid! For my advanced feature, I wanted to incorporate Dia’s hybrid search box, where the search box switches between Google and AI chat automatically.
  • I’ve laid out the basic layout & design, along with Google autocomplete, Google search, and the chat prompt design.
  • The search box works just like Google’s right now, with arrow keys and autocomplete results directly under it.
  • If the text begins to get too long, or overflow into a new line, the search box automatically converts into an AI prompt input!
  • Will be working on making the chat mechanic actually work next.

Check out the video!

0
0
10
Ship

Finally, a ship!! 🚢
This project was really rushed, as my exams are coming, and I couldn’t finish much of it. Really hope to continue in the next event!

But here is what Mesa AI does right now:

  • 📋 Generate concise summary notes from lectures which you can edit yourself, in a Notion-style editor.
  • 🤖 Comes with a agent (i like to call it sidekick) that can search your lecture notes, research on the web, and put all that together by editing directly into your notes.
  • 🗹 Ships with a quiz function for reinforced learning as well
  • Built with a flexible tab-interface, allowing you to make opened chats/quizzes larger, or on the side as you please.
  • 📑 Subject-specific instructions keep notes & quizzes relevant to syllabus, instead of those generic AI study apps out there.
  • 📚 And an organization system that splits notes into classes, and files into folders.

Demo credentials:

  • Email: [email protected]
  • Password: test1234
  • I don’t recommend using this, since you’ll be skipping out on the actual tutorials and onboarding flow. Just use if you’re too lazy.

Here are some improvements from the Flavourtown edition:

  • Model flexiblity: No longer locked to just Gemini in the chat
  • 👀 Custom Rag pipeline built from scratch: Files are uploaded in 10s, while chat context is no longer bloated.
  • 🖼️ More supported files: PDFs, slides, word documents, images can all be uploaded.
  • 🗲 Efficient notebooks design: The layout has been reconfigured, letting you resize the side panel, and move tabs anywhere you like.
  • 🔍 Agent chat: Chat can now search through your files directly instead of being a wrapper
  • ☁️ Editable notes: Notes are no longer read-only, and save your changes!

Things I learned:

  1. How to upload files with streams, and making those streams editable.
  2. How to integrate a text-editor.
  3. How to make AI interact with the BlockNote editor, given they don’t have a direct AI extension for my use case.
  4. How to create a RAG system, from extracting, to chunking, to embedding and querying.
  5. How to add tools to the model, making it truly agentic.

For more technical details & future plans, checkout the github! Full breakdown of tech stack is there. Show some love and try the demo too!

  • 11 devlogs
  • 56h
  • 16.82x multiplier
  • 917 Stardust
Try project → See source code →
Open comments for this post

18m 35s logged

Image embeddings!!

Forgot to install hackatime on a new editor so all the time i spent here on here was wasted 💔

Notebook improvements

  • 🖼️ Images from files are extracted and saved
  • 🖹 The model is presented with a list of images to choose from, and can embed them directly into the notebook.
  • 🗲 Generating notes are now single-step. The old generate title, subtitle, topics then generate notes is abolished and combined into a single request. This makes note generation almost instant!
  • 📋 New bottom bar that shows notebook actions, along with a editor mode (toggle between editing and viewing).

File uploads

  • Files uploaded are now indexed reliably.
  • Images are also extracted from files, as mentioned before.

Other changes

  • Topics has been removed temporarily.
  • Quiz no longer has topic options as well.
  • Notebook is no longer accessible on mobile
  • The tutorial was cut short.

😢 Things I couldn’t do:
Having to focus on exams, I couldn’t finish Mesa AI before stardance ends. Here are a list of things I’ll work to complete the next hackclub event:

  • Mobile support for Notebooks
  • Notebook topics that are procedurally generated
  • Add flashcards
  • Freshen up UI (little unpolished here and there)
  • Add a marking mode (AI marks papers for you)
  • Collaboration & sharing notebooks
  • Code the dashboard page (as a consolation i included a mockup of what it would have been)
  • Making topics on the class page actually work

📹 Check out the demo video and screenshots!
(show some love for me missing like almost 4-5 hours of work here)

0
0
7
Open comments for this post

3h 2m 50s logged

Upload improvements

  • File uploads are more stable, and status updates resume between reloads
  • Users can see what stage their file is at on the indexing progress
  • Allows for file statuses to still work even if the file selector dialog box is closed and reopened.
0
0
11
Open comments for this post
Reposted by @ng_qi_an

10h 0m 34s logged

Agentic notes?!?! 👀

*i really need to post devlogs more often ;p)
check out the demo first if you’re too lazy to read 🤓


Agent 🤖:

  • ⭐️ This is a crazy milestone, and I finally finished one of the biggest features i really wanted to bring to Mesa ai when i decided to continue it on stardance.
  • The chat window can now edit, delete and move notebook content! ✍️ 🫪
  • You can ask the chat to summarise blocks, turn into different formats or even create tables ⚡️ 📖
  • Basically a mini notion + notebookLM but with a study agent
  • Use this with your sources and the web to supercharge research! 🔬
  • I have plans to make the chat be able to create flashcards, quizzes and future tools directly from the chat window along with history, so there wont be a need to make those manually anymore ✨

Editor:

  • Chat agent cursor shows which block it’s interacting with (the white bar on the left) ⌨️
  • Diff editor to see what the agent changed 📋
  • Tool approvals so you can choose whether to accept it or not! ✅
  • While Blocknote provides some helpers for the AI extension, since i’m not using it as intended, I had to patch up alot of the implementation myself 😭

Chat:

  • Finally allowed images to be pasted or dragged into the chat window 🖼️
  • Added cool tool UI for notebook edits too 🎶

Check out the new demo!!!! 🎥
(sorry if its abit dizzying i was playing with the zooms a little too much)

Honestly, I never imagined I would be capable enough to create something like this, starting just about 6 months ago. 🥲

Gimme a follow too if u wanna see more of this project and find out when its done ❤️

0
1
85
Open comments for this post

10h 0m 34s logged

Agentic notes?!?! 👀

*i really need to post devlogs more often ;p)
check out the demo first if you’re too lazy to read 🤓


Agent 🤖:

  • ⭐️ This is a crazy milestone, and I finally finished one of the biggest features i really wanted to bring to Mesa ai when i decided to continue it on stardance.
  • The chat window can now edit, delete and move notebook content! ✍️ 🫪
  • You can ask the chat to summarise blocks, turn into different formats or even create tables ⚡️ 📖
  • Basically a mini notion + notebookLM but with a study agent
  • Use this with your sources and the web to supercharge research! 🔬
  • I have plans to make the chat be able to create flashcards, quizzes and future tools directly from the chat window along with history, so there wont be a need to make those manually anymore ✨

Editor:

  • Chat agent cursor shows which block it’s interacting with (the white bar on the left) ⌨️
  • Diff editor to see what the agent changed 📋
  • Tool approvals so you can choose whether to accept it or not! ✅
  • While Blocknote provides some helpers for the AI extension, since i’m not using it as intended, I had to patch up alot of the implementation myself 😭

Chat:

  • Finally allowed images to be pasted or dragged into the chat window 🖼️
  • Added cool tool UI for notebook edits too 🎶

Check out the new demo!!!! 🎥
(sorry if its abit dizzying i was playing with the zooms a little too much)

Honestly, I never imagined I would be capable enough to create something like this, starting just about 6 months ago. 🥲

Gimme a follow too if u wanna see more of this project and find out when its done ❤️

0
1
85
Open comments for this post

11h 13m 48s logged

Usage limits!

Went over the 10hr limit 😭

  • 🙈 In this update, messages now count towards a single usage limit. The default is 3000 credits, which is equivalent to 3 million tokens of Gemini 3 Flash.
  • 💸 Limits are enforced at the API level, and the chat level. Free models can still be used even when the limit is exhausted.
  • 🔁 Limits reset every billing cycle, which is about 1 month from the same day. Built in mind to be extended with stripe in the future to be monetised.
  • ❤️ This is a soft limit, so currently generating chats won’t stop halfway.
  • 📋 Billing breakdown can be seen in the usage tab on account settings, will be extended in the future!

Other than that,

  • 🍝 The notebook chat API and main chat API were merged, fixing some of the spaghetti code building up.
  • 📁 The main chat can now reference ALL files too! That’s right, ALL FILES.
  • 🤓 Notebook chats are still limited to files only linked to the notebook.

📹 Check out the awesome demo & screenshot i forgot to include in the video. Chat generation kinda slow, just skip forward.

0
0
42
Open comments for this post

49m 35s logged

Web search!

  • Short devlog, but I added Perplexity Search as a tool to both standalone chat & notebook chat. 🔍
  • 🐛 Took considerably longer cause I found some weird bug where thinking modes would become null on reload
  • Check out the screenshot for the UI eyecandy! 🍭
0
0
7
Open comments for this post

8h 57m 30s logged

Notebook & Chat updates!

Been really busy and I forgot to log :(

Notebooks

  • ☁️ Notebooks now save! Changes made to the editor persist between reloads.
  • Math equations can be edited using Latex. You can now create custom physics formulas :)
  • ✨ Brand new animation when generating that unintentionally looks like siri (it’s kinda laggy though)

Chat

  • 🤖Claude now works
  • ⚒️ New UI to visualise the model’s tool calls
  • 👀 Seeing which queries and sources the model pulls information from is now easier than ever
  • 🌐 Plans to implement this for web search

Check out this amazing demo below 📹
(might be a lil blurry cause of the file limit)

0
0
28
Open comments for this post

6h 38m 9s logged

More UI overhauls!!

I completely forgot to make devlogs 😭 Been really busy so far

In this update, I introduced a notion style notebook editor, allowing users to edit their AI-generated notes.
Along with that,

  • I’ve polished up the library panel
  • Chats and quizzes now open in a seperate tab
  • Tabs can be dragged between the sidebar and the main panel, allowing for ultimate flexibility(check out the video!!!!)
  • The main panel (notebook) can also be resized, making it more flexible on smaller devices like ipads.

In my next devlog, I’ll work on making edited notes save, and polish up the quiz UI (it was rushed from flavourtown)

0
0
19
Open comments for this post

5h 26m 1s logged

Facelift!

  • Made some huge design changes to notebooks! The interface is now tabbed, and notebook content is finally editable like Notion.
  • Still ironing out formatting for the new editor, so math is a little broken
  • New library interface is resizable and supports dragging!
    (Took longer than usual cause alot of things had to be moved around ❤️. Enjoy the videos!!)
0
0
4
Open comments for this post

1h 13m 6s logged

RAG pipeline!

Finally migrated the old notebooks to a rag-based one. Most of the changes are backend, so theres not much to show :(

  • Files (PDFs, slides, lecture notes) were directly used as sources for notebooks before. This was slow, inefficient, and wasted tokens. Now, files are converted to markdown on upload.
  • This markdown is then processed, and broken down into chunks in the rag pipeline, making chat faster and more accurate!
  • Additionally, chat uses the new AI gateway/Openrouter provider to ensure fallback and consistent speeds regardless of provider downtime (plagued the app during flavourtown)

On preliminary testing, generation speeds jumped from 30s ttft to 10s ttft, with chat seeing the most improvements.

The next update should improve UI and refine subject prompts (a lil too robotic rn)!

0
0
4
Open comments for this post

3h 29m 50s logged

Added a model selector to the chat menu! Along with this, thinking modes were standardised across all models, and usages are now tabulated.

I plan to add tools too, so the chat window can actually retrieve information from notebooks or materials uploaded.

2
0
154
Open comments for this post

4h 35m 5s logged

Stardance!! 🌟

.

Back story

This project is a continuation from flavourtown (https://flavortown.hackclub.com/projects/10428), initially to help students use AI to make studying faster.

A short summary for those unfamiliar: Mesa AI would create summary notes, quizzes and chats in a interface called notebooks. It’s meant to be similar to Notebook LM, but actually make notes and offer more exam accurate (subject-based instructions) notes & quizzes.

Unfortunately, I couldn’t finish Mesa AI in time (took almost 100 hours!). In Stardance, I aim to complete this project’s ambitious plans, and finally ship it.

Here are the things I intend to change or add:

  • Complete all the unfinished pages
  • Migrate to a fully custom RAG engine
  • Move towards openrouter and Vercel AI gateway after that gemini outage which plagued Mesa AI in most of flavourtown
  • Move from a read-only summary notes to notes which you can actually edit, and Mesa AI will edit them with you (agentic studying)

.

All those changes would need me to fundementally rewrite how Mesa AI was built, and make this journey on Stardance even more interesting. Mesa AI could also evolve to not just be a notetaker, but a researcher and an entire online tutor too.

.

First Devlog

To start off this rewrite, I’ve already made the custom RAG engine, which replaces Google’s file search API (too slow, unreliable, and locks me into using a Google API key).

All files are indexed automatically by a combination of Jina (PDF to markdown) and Mistral (PDF to markdown too), along with OpenAI’s embedding models. A 20-word summary is then generated with Gemma 4 such that search queries are more relevant without relying on file name alone.

To test this, I made a barebones boilerplate to simulate a real chat. (See the image!) Sorry I don’t have more pictures! This devlog was mainly backend.

In my testing, indexing (turning the file into embeddings and the summary) takes about 20s, with subsequent messages regarding that file taking about 5-8s (search and retrieval). Really pleased with the accuracy though!

Sadly i forgot to install hackatime on my mac so a few hours were lost when i was working outside :(

0
0
34

Followers

Loading…