Project Info
This project did not submit a demo video on Devpost.
Inspiration
As a student, note-taking is an integral part of our lives. Due to different teaching styles, we often encounter a cluttered organization when it comes to notes. This makes it extremely hard for us to retrieve existing information, find additional resources, and accelerate our learning process. We aim to tackle the tedious process of note-taking with a fast-action note-taking application that assists your every word.
What it does
This note-taking application generates a "map" graph for your notes to build connections between contents throughout the notes. You will be able to walk through every single detail that you make in this app. Also, it can make a summarization of your note content, which can help you keep checking what you have taken in notes, and help you preview your notes when you are trying to find some content. Other than that, it can offer users expanded note-related information, and check if there are any mistakes in the note.
How we built it
-For the development of the website, we used nextJS and tailwindCSS. -For all the AI Implementation we used Gemini 1.5 and implemented it using the Google library. -For the graph, we used d3 and Gemini response for the connection data. -For the web design, we used Figma.
Challenges we ran into
We had a hard time making a dynamic connection node but we were able to solve it through d3 network graphs Generating consistent output that follows a certain format was also difficult. Gemini helped a lot as it provides very accurate and consistent results with engineered prompts
Accomplishments we're proud of
We are proud to be able to utilize AI to create a personalized note-taking app that assists academia. We were able to create a visualization that allows users to reference all the notes that are related to the current topic in real time.
What we learned
We learned D3.js library: and how to effectively utilize the the library to create dynamic, interactive visualizations that enhance the organization of notes. Communication is the absolute key to a successful team. We learned to work with each other, especially on the division of tasks. Design has been one of the challenging parts but the most rewarding. We were able to learn more about UX/UI designs and try to elevate user experience.
What's next
Add a button for live audio recording/converting to text, along with a button where we can click for a mark/highlight that we are confused about during the lecture/have questions to ask later. Refer more useful page for the note from Google (outside of the note) Improve based on user-friendliness
This repository has no readme, or GitHub could not be reached.
Analysis
View
Metric
- 30
- 11
- 5
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- Google GeminiIn code
- JavaScriptIn code
- Next.jsIn code
- ReactIn code
- Tailwind CSSIn code
- TypeScriptIn code
7 of 7 appear in the indexed code.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
56 KB
Source files
14
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
Nikko-Adrian-Pacleb/CalHacks11v1
30 files · 430 KB · @ 9712660
Structure
Interface
7 files · 23%Screens, components and styles rendered to the user.
API & routing
4 files · 13%Request entry points: routes, handlers and controllers.
Application logic
1 file · 3%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript79%
- TypeScript12%
- CSS6%
- Markdown3%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
frontend/package.json
npm · 17- @fortawesome/free-solid-svg-icons
- @fortawesome/react-fontawesome
- @google/generative-ai
- @tiptap/react
- @tiptap/starter-kit
- @types/d3
- d3
- marked
- next
- react
- react-dom
- +6 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
Feature verification
AI note summarizationVerified
Can make a summarization of your note content to help review/preview notes
Claimed on Devposthigh confidencefrontend/app/api/getSummary/route.js:4— POST route sends note HTML to Gemini with a summarization-focused prompt and returns markdown outputfrontend/app/productPage/page.jsx:454— generateSummary() calls /api/getSummary and renders the returned summary in the UI
Click-through note navigation from graph nodesVerified
You will be able to walk through every single detail that you make in this app (navigate via the map)
Claimed on Devposthigh confidencefrontend/app/productPage/page.jsx:595— handleNodeClick looks up the clicked node's note and sets it as the current notefrontend/app/components/NetworkDiagram.tsx:98— canvas click handler detects the nearest node and invokes onNodeClick callback
Expanded/related note information ('More Info')Verified
Offers users expanded note-related information
Claimed on Devposthigh confidencefrontend/app/api/getMore/route.js:4— POST route prompts Gemini to add relevant external context/sources for the note contentfrontend/app/productPage/page.jsx:485— getMoreInfo() calls /api/getMore and displays it under the 'More Info' section
Fast-action note-taking editorVerified
A fast-action note-taking application that assists your every word
Claimed on Devpostmedium confidencefrontend/app/components/Tiptap.jsx— Tiptap-based rich text editor component used as the note content editorfrontend/app/productPage/page.jsx:683— Tiptap editor wired into productPage with debounced AI calls (debounceApiCalls) triggered on content change
Gemini 1.5 AI integration via Google libraryVerified
For all the AI Implementation we used Gemini 1.5 and implemented it using the Google library
Claimed on Devposthigh confidencefrontend/app/api/getSummary/route.js:7— genAI.getGenerativeModel({ model: 'gemini-1.5-flash' }) using @google/generative-ai packagefrontend/package.json:14— @google/generative-ai listed as a dependency
Mistake/error checking in notesVerified
Checks if there are any mistakes in the note
Claimed on Devposthigh confidencefrontend/app/api/getMistakes/route.js:4— POST route prompts Gemini to find and correct mistakes (grammar/code) in the note contentfrontend/app/productPage/page.jsx:516— getMistakes() calls /api/getMistakes and displays results under the 'Mistakes' section
Next.js + Tailwind CSS websiteVerified
For the development of the website, we used nextJS and tailwindCSS
Claimed on Devposthigh confidencefrontend/package.json:20— next 14.2.15 and tailwindcss 3.4.1 listed as dependenciesfrontend/tailwind.config.ts— Tailwind config present and utility classes used throughout productPage/page.jsx
Note-connection graph visualization (D3 network map)Verified
Generates a 'map' graph for your notes to build connections between contents throughout the notes, built with D3
Claimed on Devposthigh confidencefrontend/app/components/NetworkDiagram.tsx:61— d3.forceSimulation-based canvas network graph component with node click handlingfrontend/app/productPage/page.jsx:767— NetworkDiagram is rendered with notesConnection data and wired to node clicksfrontend/app/api/getNotesConnections/route.js:22— POST route prompts Gemini to generate nodes/links JSON for the graph from note titles/content
Confusion/question highlight marker during lectureClaimed only
A button to mark/highlight content the user is confused about or has questions on (listed under 'What's next')
Claimed on Devposthigh confidenceLive audio recording / speech-to-text for notesClaimed only
Add a button for live audio recording/converting to text (listed under 'What's next')
Claimed on Devposthigh confidenceFigma-based web designBlocked
For the web design, we used Figma
Claimed on Devpostlow confidence
An AI agent derived these features from the project’s Devpost page and readme, then searched the code for each one. Verified features are backed by cited code; claimed-only features had no supporting code, which is not by itself proof a feature is missing.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.