English | 中文简体
ExMemo is a personal knowledge management project designed to centrally record and manage various types of information, including favorite texts, books, music, videos, web pages, work documents, as well as reflections and thoughts about life. By systematically integrating these elements, it aims to break through cognitive limitations and discover internal connections.
The system consists of a database, backend, and multiple front-ends. Distributed storage and databases are used to store user files, text, and corresponding vector data. Data storage can be deployed locally to protect user privacy. The backend provides general interfaces for data creation, reading, updating, and deletion (CRUD) operations and is responsible for invoking large models and processing data. The system supports mainstream online large models like OpenAI, Gemini, Qwen as well as offline models like Ollama. Multiple front-ends are available in the form of web services, WeChat bots, Obsidian plugins, and browser extensions for users to upload and download data.
obsidian-exmemo-client
is a client of ExMemo designed as an Obsidian plugin for synchronization and retrieval.
- Use ExMemo to sync Obsidian notes across different devices and store them on the backend.
- Retrieve user data synced to ExMemo from various terminals.
- Integrate content such as web pages and quick notes from ExMemo into Obsidian notes.
Installation instructions can be found at: https://github.com/exmemo-ai/exmemo
Search for the keyword "exmemo" in the community plugin market and install the plugin.
(Mainly used when modification of source code is needed)
Download Compilation
cd /exports/exmemo/code
git clone https://github.com/exmemo-ai/obsidian-exmemo-client.git
docker run --name obdev --rm -v /exports:/exports -it node:18 sh
cd /exports/exmemo/code/obsidian-exmemo-client
npm install
npm run build # build to main.js
You can also download the latest version of the plugin directly from the Release page on GitHub.
Installation
- Copy the compiled
main.js
,manifest.json
, andstyles.css
to the.obsidian/plugins/obsidian-exmemo-client/ directory of your Obsidian vault. - Open Obsidian, go to "Settings" -> "Third-party plugins"
- Find "ExMemo" and click the enable button.
- Server address format: http://IP:PORT. Please set up the ExMemo backend service before use.
- You need to register a user on the ExMemo frontend before using it for the first time.
- Modify include/exclude directories or files, as well as set synchronization time as per prompts.
Press Ctrl+P to bring up the plugin, enter ExMemo in the search box, and select the desired ob plugin function.
- Sync current note
- Upload or download all notes to/from ExMemo server
- By entering keywords, you can match notes, bookmarked web pages, or impromptu records and insert results into your current note.
- Use spaces to separate multiple keywords if needed.
- Matching priority: Title match > Content match > Fuzzy match.
- You can filter search data by setting start and end times and number of entries.
Before using "Sync All Files" for the first time, please back up your Obsidian data in case of unexpected situations.
This project is licensed under GNU Lesser General Public License v3.0. For details, please refer to LICENSE file.