From 5208327b5de1c17269053bf288d6bbc970651613 Mon Sep 17 00:00:00 2001 From: KS Jannette Date: Fri, 13 Feb 2026 15:12:18 -0500 Subject: [PATCH] more --- README.md | 8 +++++--- backend/routes/notes.routes.js | 2 +- frontend/src/components/stickies.tsx | 6 +++--- frontend/src/pages/Home.tsx | 8 ++++---- frontend/src/styles/home.css | 2 +- 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 853e905..f73db6d 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,13 @@ kongruity employs Large Language Model ("LLM") semantic grouping functionality t (To learn more about this topic, see, e.g., [Kozlowski A., Boutyline A., Semantic Structure in Large Language Model Embeddings Aug. 2025, arXiv:2508.10003v1:04 Aug 2025](https://arxiv.org/html/2508.10003v1)). -In the world of kongruity, these "to dos" are called "sticky notes." kongruity's React/Vite UI views a board of seemingly chaotic "sticky notes". But with one click, they are transformed into manageable, actionable groups, each with a header that explains the group semantic interrelation. +In kongruity world, "to dos", action items, agile tickets... the myriad artifacts of the creative/engineering process, are "sticky notes." -The backend is an Express API that serves "sticky note" data and proxies semantic grouping requests to Antrhopic Claude. +kongruity's React/Vite UI displays a board of seemingly chaotic "sticky notes". But with one click, they are transformed into manageable, actionable groups, each with a header that explains that group's semantic relation. -Developers may feel free to install other LLM SDKs and alter the syntax at backend/services/clustering.service.js to experiment with any LLM model/platform they prefer. +The backend is an Express API that serves "sticky note" data and proxies semantic grouping requests to Large Language Models. + +Developers may freeely swap in other LLM SDKs and/or APIs... and alter prompt syntax at backend/services/clustering.service.js to compliement their experimentation with any LLM model/platform they prefer. ## Prerequisites diff --git a/backend/routes/notes.routes.js b/backend/routes/notes.routes.js index 6d7df15..10d2c41 100644 --- a/backend/routes/notes.routes.js +++ b/backend/routes/notes.routes.js @@ -3,7 +3,7 @@ import { readFile } from 'fs/promises'; import { clusterNotes } from '../services/clustering.service.js'; const router = Router(); -const DATA_PATH = '../data/notes.json'; +const DATA_PATH = new URL('../data/notes.json', import.meta.url); const loadNotes = async () => { const raw = await readFile(DATA_PATH, 'utf-8'); diff --git a/frontend/src/components/stickies.tsx b/frontend/src/components/stickies.tsx index 7a5d3e0..009e91f 100644 --- a/frontend/src/components/stickies.tsx +++ b/frontend/src/components/stickies.tsx @@ -24,7 +24,7 @@ const Stickies = () => { const stickyMap = buildStickyMap(); const renderStickies = (items: StickyType[]) => - items.map((sticky) => ); + items?.map((sticky) => ); return (
@@ -36,8 +36,8 @@ const Stickies = () => {

{group.label}

{renderStickies( - group.noteIds - .map((id) => stickyMap.get(id)) + group?.noteIds + .map((id) => stickyMap?.get(id)) .filter((s): s is StickyType => !!s) )}
diff --git a/frontend/src/pages/Home.tsx b/frontend/src/pages/Home.tsx index e6f91ce..09032bd 100644 --- a/frontend/src/pages/Home.tsx +++ b/frontend/src/pages/Home.tsx @@ -5,12 +5,12 @@ import '../styles/home.css' const Home = () => { return (
-
+ -
-
+ + -
+
); }; diff --git a/frontend/src/styles/home.css b/frontend/src/styles/home.css index 1a988f6..1b6aa24 100644 --- a/frontend/src/styles/home.css +++ b/frontend/src/styles/home.css @@ -1,7 +1,7 @@ .main-head-box { border-radius: 8px; border: 1px solid #6dd6f4; - background-color: rgb(92, 0 91); + background-color: rgb(92, 0, 91); display: flex; }