The most effective way to learn and understand material is to make links between ideas, but most of our notes are dispersed in google docs, pdfs, and links all over the place. Inspired by the the way the brain makes neural connections, we wanted to make the note-taking and knowledge acquisition process more effective with a knowledge graph of notes!


Current note-taking applications are oftentimes based on a tree-like structure, with a hierarchy defined by the user. This then creates many compartments to organize the end-user notes. However, in nature, our brains act more like a networked graph rather than this hierarchical tree-structure. Why not create a note-taking application that enhances our current networked thought rather than limit it.

What it does

Our application is an easy-to-use platform for networked thought.

Users can take notes through our document editor page, and future iterations of our application will fully support document upload via files and urls (currently integrated as an endpoint). The platform then feeds the document text into our machine learning functions, which finds the keywords of the document and generates other potential keywords. These keywords are then used to connect documents together within our graph database. Finally, users can utilize both our graph visualization tool and our table format to quickly access their related documents.

So what is so special about generating some keywords? Our application can help create links between potentially related documents, serving as a natural extension of your mind. For example, if there are 3 documents A,B,C where there are links between document A ←→ document B as well as document B ←→ document C, but there are no links between documents A & C, our application would suggest these to be potential places to explore. Similar to human thoughts, our application tries to combine related ideas to spark new ones.

How we built it

Frontend: React, Ant-Design

Backed/Hosting: Neo4j, Google App Engine, Google Firebase, Google Natural Language Processing, GPT-3

Primary Langauges: Golang, Python, JavaScript

Challenges we ran into

lack of sleep zzz

Accomplishments that we're proud of

  • Learned how to used a graph database!
  • Played around with new machine learning concepts

What we learned

  • How to use GPT-3
  • How to use Google Cloud Platform for NLP
  • How to deploy onto Google Cloud App Engine
  • How to use Neo4j
  • How to struggle with frontend :')

What's next for Networked Notes

We're looking forward to continuing this project after the hackathon! We plan to extend more basic functionality of the project, such as adding user authentication, clean landing page, and ui clean-ups. We also plan on extending the machine learning capabilities, such as implementing features to create document summaries or new ideas from existing documents. Finally, we want to ensure our application can scale upwards to thousands of documents.

See link for our meme homepage!

Share this project: