Skip to content

evolvingstuff/MetaList

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MetaList

PyPI PyPI - Python Version Runs on Linux | MacOS | Windows

What is MetaList?

MetaList is a self-hosted personal knowledge management web application, tightly integrated with large language models.

⚠️ MetaList is currently in Development: Expect breaking changes and bugs

Features

  • Chat feature: LLM integration (currently only OpenAI API)
  • Chart.js integration for LLM-generated visualizations
  • Hierarchical, collapsable note structure
  • Reordering notes in one context survives to other search contexts; notes maintain a total order
  • Quick, responsive searching (tags, full-text, or combo of both)
  • Search suggestions
  • Tagging
  • Tag suggestions (uses a Jaccard index)
  • Tags can imply other tags
  • Tag implication rules are also notes; they can themselves be tagged and searched
  • Nested subitems in notes inherit tags from their parents
  • Markdown/LaTeX support
  • Infinite undo/redo
  • Infinite scrolling

Chat Feature

Search filters notes down to a relevant subset (a "search context"), which has the nice effect of acting as a form of human-guided retrieval augmented generation. The chat feature is fully integrated with the underlying notes. Mousing over a reference in the chat will highlight the referenced note, if it is within view, and clicking on the reference will navigate to and select the note, even opening up collapsed items in the note hierarchy so that all the relevant info becomes visible.

Some Examples

Recommendations based on a list of favorite movies, with interactive back-references:

Visualizing data from MetaList items:

Quick Start

It is recommended that you create a Python virtual environment before installing MetaList.

python3 -m venv venv
source venv/bin/activate

Then, install MetaList using pip:

pip install --upgrade pip
pip install metalist

From the installation directory, run:

metalist

Navigate to http://127.0.0.0:8080/

Read the cheatsheet.

Roadmap

  • Chat integration with other models
  • Menus / Settings
  • Reminders
  • Passwords / encryption at rest
  • Import data from browser bookmarks
  • Import data from other PKM apps
  • Export notes to JSON, Markdown, HTML, PDF
  • File handling
  • Access to local file system
  • Multi-user
  • Mobile friendly
  • More unit/integration testing

License

MetaList is licensed under the MIT license. See LICENSE for more information.