Inspiration

We are all passionate about freedom of communication and knowledge transparency. With media consolidation and misinformation on the rise, we wanted to build a system which brings control over knowledge transfer back to communities.

What it does

Unity Notes provides an system for users to share context on any information on the web. Using the Unity Notes Chrome extension, users can select statements to either provide or fetch context for. Notes are not stored in the central server. Instead, the notes are stored locally on the users device, with the original statements and protocol to contact the notes authors stored in a vector database. When a user requests context for a statement, the vector database is used to identify users who have commented on relevant statements. The notes can then be retrieved directly with a peer to peer connection, and are then consolidate using an aggregation agent, and then displayed to the user.

How we built it

Tech Stack:

  • Python backend
  • JavaScript, HTML, CSS frontend
  • Qdrant vector database
  • SQLite
  • SQLalchemy
  • Gemini API

Challenges we ran into

  • Asynchronous network interactions
  • Silent errors in asynchronous code
  • Prompt engineering
  • Optimizing similarity search with vector databases
  • Handling diverse web content

Accomplishments that we're proud of

  • Implementing new technologies to us such as Qdrant vector databases and asynchronous network interactions effectively in the short time frame
  • Building a networking heavy application with limited networking experience

What we learned

  • We learned about the logic behind vector databases and how useful they can be for cost-effective semantic sorting
  • How to create a Chrome extension
  • Asynchronous networking
  • Professional Git version control

What's next for Unity Notes

  • Adding more agentic customization such as aggregation customization and webpage parsing
  • Context requirements for adding notes,
  • Scalability features such as weighing notes for prioritized summarization
  • Browser PDF reader compatibility
Share this project:

Updates