[PR #17053] [CLOSED] feat: Introduce Note+ – Enhanced AI-Powered Note-Taking with Hierarchical CategorizationTmp branch #24307

Closed
opened 2026-04-20 05:20:05 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/open-webui/pull/17053
Author: @syschat0
Created: 8/30/2025
Status: Closed

Base: mainHead: tmp-branch


📝 Commits (10+)

  • 69f8edf 최초 브랜치 커밋
  • f3f34bb Added the improved noteplus feature over the existing notes.
  • bf5e04f Added category search functionality to the sidebar.
  • f3ed9f2 Added document count display to the noteplus category tree view.
  • 1877dab Fixed the position of the search box in the noteplus sidebar.
  • e9a22fa Fixed bug in chat content insertion feature.
  • 5915380 Fixed bugs related to Related Notes
  • f4aaae8 Fixed bugs related to categorize functionality.
  • 9aec1a7 Unify title and category generation in noteplus to use LLM-based approach
  • 55ad62c feat(noteplus): Add noteplus feature toggle and improve empty state handling

📊 Changes

44 files changed (+8640 additions, -3029 deletions)

View changed files

📝 .gitignore (+11 -0)
📝 backend/open_webui/config.py (+11 -0)
📝 backend/open_webui/main.py (+5 -0)
backend/open_webui/migrations/versions/add_noteplus_table.py (+46 -0)
backend/open_webui/models/noteplus.py (+237 -0)
📝 backend/open_webui/routers/auths.py (+4 -0)
backend/open_webui/routers/noteplus.py (+309 -0)
backend/open_webui/static/apple-touch-icon.png (+0 -0)
backend/open_webui/static/custom.css (+0 -0)
backend/open_webui/static/favicon-96x96.png (+0 -0)
backend/open_webui/static/favicon-dark.png (+0 -0)
backend/open_webui/static/favicon.ico (+0 -0)
backend/open_webui/static/favicon.png (+0 -0)
backend/open_webui/static/favicon.svg (+0 -3)
backend/open_webui/static/loader.js (+0 -0)
backend/open_webui/static/logo.png (+0 -0)
backend/open_webui/static/site.webmanifest (+0 -21)
backend/open_webui/static/splash-dark.png (+0 -0)
backend/open_webui/static/splash.png (+0 -0)
backend/open_webui/static/user-import.csv (+0 -1)

...and 24 more files

📄 Description

Pull Request Checklist

Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.

Before submitting, make sure you've checked the following:

  • Target branch: Please verify that the pull request targets the dev branch.
  • Description: Provide a concise description of the changes made in this pull request.
  • Changelog: Ensure a changelog entry following the format of Keep a Changelog is added at the bottom of the PR description.
  • Documentation: Have you updated relevant documentation Open WebUI Docs, or other documentation sources?
  • Dependencies: Are there any new dependencies? Have you updated the dependency versions in the documentation?
  • Testing: Have you written and run sufficient tests to validate the changes?
  • Code review: Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards?
  • Prefix: To clearly categorize this pull request, prefix the pull request title using one of the following:
    • feat: Introduces a new feature or enhancement to the codebase

Changelog Entry

Description

This pull request introduces Note+ (Note Plus), an enhanced note-taking feature that extends the existing notes functionality with advanced categorization and AI-powered organization capabilities. Note+ provides a hierarchical three-level category system (major/sub/middle categories) with automatic categorization using LLM, improving the organization and retrieval of notes.

Added

  • New Note+ Feature: Complete implementation of enhanced note-taking system with:

    • Hierarchical three-level category structure (major/middle/minor)
    • Tree view visualization in the sidebar for category navigation
    • Document count display per category
    • Category search functionality in the sidebar
    • AI-powered automatic title generation and category classification using LLM
    • Related notes suggestion feature
    • Chat content insertion capability
    • Dedicated Note+ editor with rich text support
  • Backend Components:

    • backend/open_webui/models/noteplus.py: Data model for Note+ with category support
    • backend/open_webui/routers/noteplus.py: API endpoints for Note+ operations
    • backend/open_webui/utils/categorizer.py: LLM-based categorization utility
    • Database migration script for Note+ table creation
  • Frontend Components:

    • src/lib/components/noteplus/: Complete UI component set including:
      • NotePlusEditor.svelte: Main editor with AI menu integration
      • CategoryTree.svelte: Interactive category tree view with search
      • NotesPlus.svelte: Note+ management interface
      • AIMenu.svelte: AI-powered features menu
    • src/routes/(app)/noteplus/: Dedicated routing for Note+ feature
    • src/lib/apis/noteplus/index.ts: API client for Note+ operations

Changed

  • Configuration Updates:

    • backend/open_webui/config.py: Added Note+ feature toggle configuration
    • backend/open_webui/main.py: Integrated Note+ router
    • src/lib/components/admin/Settings/General.svelte: Added Note+ enable/disable settings
    • src/lib/components/layout/Sidebar.svelte: Added Note+ section to sidebar navigation
  • Internationalization:

    • Updated translation files (en-US, ko-KR) with Note+ related strings
  • Dependencies:

    • Updated package.json and package-lock.json with required dependencies

Fixed

  • [List any fixes, corrections, or bug fixes]

Breaking Changes

  • None - Note+ is implemented as a separate, optional feature that coexists with the existing notes functionality

Additional Information

  • Note+ is designed to be completely independent from the existing notes feature, preventing any conflicts
  • The feature can be enabled/disabled through the admin settings panel
  • All Note+ data is stored in a separate database table (noteplus)
  • The categorization system uses AI/LLM for intelligent automatic classification
  • The implementation follows the existing codebase patterns and conventions
  • Developed and tested in Windows Anaconda environment

Screenshots or Videos

demo

Contributor License Agreement

By submitting this pull request, I confirm that I have read and fully agree to the Contributor License Agreement (CLA), and I am providing my contributions under its terms.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/open-webui/pull/17053 **Author:** [@syschat0](https://github.com/syschat0) **Created:** 8/30/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `tmp-branch` --- ### 📝 Commits (10+) - [`69f8edf`](https://github.com/open-webui/open-webui/commit/69f8edfac72fff7500b8795482c86f5e07d54ec5) 최초 브랜치 커밋 - [`f3f34bb`](https://github.com/open-webui/open-webui/commit/f3f34bbca5910e1cf7fa87e12d041041d936639d) Added the improved noteplus feature over the existing notes. - [`bf5e04f`](https://github.com/open-webui/open-webui/commit/bf5e04fbd655ddbe25dc43c039e5752fb53475a2) Added category search functionality to the sidebar. - [`f3ed9f2`](https://github.com/open-webui/open-webui/commit/f3ed9f2dce221b83efbad68c1f2d282d8ac29193) Added document count display to the noteplus category tree view. - [`1877dab`](https://github.com/open-webui/open-webui/commit/1877dabaa0bf37cafd8d3fcbf4b02112c863b283) Fixed the position of the search box in the noteplus sidebar. - [`e9a22fa`](https://github.com/open-webui/open-webui/commit/e9a22fa6d6b0a7d7ed9777bfa4e8cc48bb00c9c0) Fixed bug in chat content insertion feature. - [`5915380`](https://github.com/open-webui/open-webui/commit/59153807c0b3edaf45d7ae44173e62541f3300b6) Fixed bugs related to Related Notes - [`f4aaae8`](https://github.com/open-webui/open-webui/commit/f4aaae8bed9e64983bd345ff59625d3b8080c83e) Fixed bugs related to categorize functionality. - [`9aec1a7`](https://github.com/open-webui/open-webui/commit/9aec1a76b32ecea1f793432f97da9dd1e912ef11) Unify title and category generation in noteplus to use LLM-based approach - [`55ad62c`](https://github.com/open-webui/open-webui/commit/55ad62caa0c41581099554790152ee603c54e9f5) feat(noteplus): Add noteplus feature toggle and improve empty state handling ### 📊 Changes **44 files changed** (+8640 additions, -3029 deletions) <details> <summary>View changed files</summary> 📝 `.gitignore` (+11 -0) 📝 `backend/open_webui/config.py` (+11 -0) 📝 `backend/open_webui/main.py` (+5 -0) ➕ `backend/open_webui/migrations/versions/add_noteplus_table.py` (+46 -0) ➕ `backend/open_webui/models/noteplus.py` (+237 -0) 📝 `backend/open_webui/routers/auths.py` (+4 -0) ➕ `backend/open_webui/routers/noteplus.py` (+309 -0) ➖ `backend/open_webui/static/apple-touch-icon.png` (+0 -0) ➖ `backend/open_webui/static/custom.css` (+0 -0) ➖ `backend/open_webui/static/favicon-96x96.png` (+0 -0) ➖ `backend/open_webui/static/favicon-dark.png` (+0 -0) ➖ `backend/open_webui/static/favicon.ico` (+0 -0) ➖ `backend/open_webui/static/favicon.png` (+0 -0) ➖ `backend/open_webui/static/favicon.svg` (+0 -3) ➖ `backend/open_webui/static/loader.js` (+0 -0) ➖ `backend/open_webui/static/logo.png` (+0 -0) ➖ `backend/open_webui/static/site.webmanifest` (+0 -21) ➖ `backend/open_webui/static/splash-dark.png` (+0 -0) ➖ `backend/open_webui/static/splash.png` (+0 -0) ➖ `backend/open_webui/static/user-import.csv` (+0 -1) _...and 24 more files_ </details> ### 📄 Description # Pull Request Checklist ### Note to first-time contributors: Please open a discussion post in [Discussions](https://github.com/open-webui/open-webui/discussions) and describe your changes before submitting a pull request. **Before submitting, make sure you've checked the following:** - [x] **Target branch:** Please verify that the pull request targets the `dev` branch. - [x] **Description:** Provide a concise description of the changes made in this pull request. - [x] **Changelog:** Ensure a changelog entry following the format of [Keep a Changelog](https://keepachangelog.com/) is added at the bottom of the PR description. - [ ] **Documentation:** Have you updated relevant documentation [Open WebUI Docs](https://github.com/open-webui/docs), or other documentation sources? - [x] **Dependencies:** Are there any new dependencies? Have you updated the dependency versions in the documentation? - [ ] **Testing:** Have you written and run sufficient tests to validate the changes? - [x] **Code review:** Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards? - [x] **Prefix:** To clearly categorize this pull request, prefix the pull request title using one of the following: - **feat**: Introduces a new feature or enhancement to the codebase # Changelog Entry ### Description This pull request introduces **Note+** (Note Plus), an enhanced note-taking feature that extends the existing notes functionality with advanced categorization and AI-powered organization capabilities. Note+ provides a hierarchical three-level category system (major/sub/middle categories) with automatic categorization using LLM, improving the organization and retrieval of notes. ### Added - **New Note+ Feature**: Complete implementation of enhanced note-taking system with: - Hierarchical three-level category structure (major/middle/minor) - Tree view visualization in the sidebar for category navigation - Document count display per category - Category search functionality in the sidebar - AI-powered automatic title generation and category classification using LLM - Related notes suggestion feature - Chat content insertion capability - Dedicated Note+ editor with rich text support - **Backend Components**: - `backend/open_webui/models/noteplus.py`: Data model for Note+ with category support - `backend/open_webui/routers/noteplus.py`: API endpoints for Note+ operations - `backend/open_webui/utils/categorizer.py`: LLM-based categorization utility - Database migration script for Note+ table creation - **Frontend Components**: - `src/lib/components/noteplus/`: Complete UI component set including: - `NotePlusEditor.svelte`: Main editor with AI menu integration - `CategoryTree.svelte`: Interactive category tree view with search - `NotesPlus.svelte`: Note+ management interface - `AIMenu.svelte`: AI-powered features menu - `src/routes/(app)/noteplus/`: Dedicated routing for Note+ feature - `src/lib/apis/noteplus/index.ts`: API client for Note+ operations ### Changed - **Configuration Updates**: - `backend/open_webui/config.py`: Added Note+ feature toggle configuration - `backend/open_webui/main.py`: Integrated Note+ router - `src/lib/components/admin/Settings/General.svelte`: Added Note+ enable/disable settings - `src/lib/components/layout/Sidebar.svelte`: Added Note+ section to sidebar navigation - **Internationalization**: - Updated translation files (en-US, ko-KR) with Note+ related strings - **Dependencies**: - Updated package.json and package-lock.json with required dependencies ### Fixed - [List any fixes, corrections, or bug fixes] ### Breaking Changes - None - Note+ is implemented as a separate, optional feature that coexists with the existing notes functionality --- ### Additional Information - Note+ is designed to be completely independent from the existing notes feature, preventing any conflicts - The feature can be enabled/disabled through the admin settings panel - All Note+ data is stored in a separate database table (`noteplus`) - The categorization system uses AI/LLM for intelligent automatic classification - The implementation follows the existing codebase patterns and conventions - Developed and tested in Windows Anaconda environment ### Screenshots or Videos [demo](https://github.com/user-attachments/assets/646ced2f-ac18-4061-9c84-0791c2211333) ### Contributor License Agreement By submitting this pull request, I confirm that I have read and fully agree to the [Contributor License Agreement (CLA)](/CONTRIBUTOR_LICENSE_AGREEMENT), and I am providing my contributions under its terms. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-20 05:20:05 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#24307