KiteView: Enhanced Annotations and Document Viewer

Inspiration

As students, we immerse ourselves in research papers, technical documentation, and dense literature daily. Yet, the hardest part of consuming all of these documents isn’t the volume - it’s the friction. Every unfamiliar term or complex idea forces us to stop, leave the page, and lose our flow while we open a new window, tab, or boot up an AI model to try and better understand these passages. The problem isn’t limited to just us - the inconvenience involved in trying to understand one term or passage often compels readers everywhere to outsource entire pages of their documents to AI, often only reading the summary themselves. We’ve noticed that this kind of work offloading minimizes self thought and overall learning depth. To combat this, we wanted to build a seamlessly integrated tool to decode tough language instantly and help us make thoughtful annotations as we read - one that wouldn’t disrupt our workflow, but rather enrich it.

What it does

KiteView will remake your experience in reading long papers/documents. It can automatically show word definitions in one click, explain and/or summarize highlighted phrases with user reading preferences in mind, and organize user annotations in a clean view. Most importantly, KiteView is easy to use - one click or highlight is all it takes to translate technical jargon to the language that is just right for you. The application encourages you to think on your own by making it easy for you to add your own thoughts and annotations to documents, meaning after you understand, you can then process the information and reflect on it, if you so choose. What once took multiple windows, tabs, and searches now only takes one click with KiteView.

How we built it

We built KiteView as a React Native monorepo with a native macOS app (react-native-macos). Shared core / UI / pdf-engine packages power a pdf.js WebView reader; Supabase Auth + Edge Functions (annotate, forms-detect) keep OpenAI keys off the client. Tap-to-define, preference-aware LLM explanations, pinned margin notes, and a form-detection cascade turn long PDFs into something you can actually engage with.

Challenges we ran into

We faced challenges in environment/workspace setup, architecture planning, and figuring out an effective workflow for the team as we all had different amounts hacking experiences and utilized different platforms. We had to tackle a variety of design challenges as well, from brainstorming the most user friendly ways to display content as well as the simple yet effective design to make document reading into a compelling experience.

Accomplishments that we're proud of

We are proud of our idea and our final product with its implementation of OpenAI to create personalized summaries and explanations, its clean UI and annotation organization system, and its forms features that can detect form fields using AI. We are also particularly proud of the organizational layout of our application - everything is easy to navigate conveniently and intuitively, making the reading and learning process truly seamless.

What we learned

We learned that you don’t have to come up with a project that pushes the frontiers of software. Sometimes, it’s the small issues you face in your day-to-day life that could snowball into massive roadblocks for others. Solving those small problems for everyone could have just as big of an impact as making the next great LLM.

What's next for KiteView

There’s always more information in the world than we can possibly fathom. In addition to enhancing the compatibility of KiteView with other platforms, one of our primary visions for this software is art analysis. Through leveraging different attributes of a particular artwork, we can help users discover what’s beyond the brushstrokes on the canvas. Additionally, due to the large population of immigrants in America, we also found it insightful to incorporate a translation feature to help those understand documents when they don't have easy access to a translator, which helps increase the independence of those who are learning their ways around a new language.

Built With

Share this project:

Updates

Submission history