Bonsai-27B-GGUF
lmstudio-community · Kit
A GGUF conversion of the 27B Bonsai model for LM Studio, with a 3.80 GB Q1_0 language file and a 0.93 GB BF16 vision projector. Tested for text, vision and par…

A free, MIT-licensed note-taking app that you host yourself, where short thoughts and longer Markdown notes gather in a personal timeline. The setup notes cover Docker, Compose, a binary, Kubernetes, HTTPS, backups, upgrades, the Web Clipper, the API, webhooks and Claude Code over MCP.
Memos is an open-source project on GitHub in the Productivity category, listed by Mindket. It is free. This is version 2, last updated on . Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.
docker run -d \ --name memos \ -p 5230:5230 \
Memos is an open-source, self-hosted note-taking app for everyday thoughts. A memo can be a single sentence or a longer entry in Markdown. Each one stays with the day you wrote it, so your notes build up into a personal timeline you can look back through. Tags connect related thoughts across days. The record lives on your own server, and you choose what stays private, what goes to family and friends, and what is published on the web.
The server ships as one Docker image or one binary. SQLite is the default database, and MySQL and PostgreSQL are options.
People who want one private place for quick thoughts and are happy to run a small server to get it. It also fits small groups, because a Space lets members write side by side while each keeps their own memos. Skip it if you do not want to look after a server. You run the backups and the upgrades yourself. The live demo at https://demo.usememos.com lets you try it first.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Personal notes | Anyone who jots things down through the day | Write short memos, tag them and look back through the timeline | Someone types a one-line idea, adds #reading to it and opens that tag later to find it again. |
| Task tracking | People who keep checklists inside their notes | Add checklists to memos and save a View for what is unfinished | A user makes a View with the filter has_task_list && has_incomplete_tasks and opens it from the sidebar. |
| Teams and families | Small groups who want one shared place | Create a Space, invite existing users and choose who reads each memo | A team lead opens the Space switcher, chooses Create Space, names it and invites a colleague, who accepts from the Inbox. |
| Research and reading | People who collect what they read online | Clip pages and selections with the Web Clipper, which keeps a link to the source | A reader selects a paragraph in an article and clips it with the page’s example template. The memo gets a Source line with the page title and URL, followed by a Description line. |
| Developers and homelab | People who already run their own services | Call the REST API, receive webhooks or connect an AI assistant over MCP | A developer makes a personal access token and runs the docs’ curl line against the /api/memos address of their instance. |
Memos runs on hardware you control and opens in a browser. The README and the docs name these ways to connect it to other tools.
| Route | What you run | What the docs say |
|---|---|---|
| Docker | One docker run command with the neosmemo/memos image | The simplest production-style deployment for one instance. The image covers linux/amd64, linux/arm64 and linux/arm/v7 |
| Docker Compose | A compose file kept next to your data folder | A good default when you want a checked-in file, predictable restarts and easier upgrades |
| Binary | A release archive for your platform | Linux (amd64, arm64, armv7), macOS (Intel and Apple Silicon) and Windows (amd64). You manage the service, upgrades and HTTPS yourself |
| Kubernetes | A Deployment, a Service, an Ingress and a volume | For people who already operate a cluster. Use one replica with SQLite |
| Source | A tagged checkout, built into one binary | For a fork, a custom patch or a build pinned to an exact revision |
Get it saves a zip of Mindket’s setup notes in your downloads folder, with a page for each route and add-on from the maker’s README and docs. The main route is one Docker command.
| Need | Detail |
|---|---|
| A host | Docker on the machine that runs Memos, or a machine for one of the binary platforms |
| A browser | The app opens at http://localhost:5230 with Docker and http://localhost:8081 as a binary |
| A data folder | One your user can write to. The README’s command uses ~/.memos |
| A database | SQLite is the default and needs nothing extra. MySQL or PostgreSQL if you want one |
| An account | You create the first one in the app, and it becomes the host admin |
| For MCP or the API | A personal access token from your user settings |
docker run -d \ --name memos \ -p 5230:5230 \ -v ~/.memos:/var/opt/memos \ neosmemo/memos:stable
The Docker page gives the same command with --restart unless-stopped added. If the page does not load, the Getting Started page points you to the container’s logs.
docker logs memos
Open the composer from the sidebar and write. Markdown works, checklists work, and a tag is a word after a hash sign. The Getting Started page suggests a first memo like this one, shortened here (its Code section is left out).
# Welcome to Memos This is my first memo. ## Tasks - [x] Install Memos - [ ] Write a real note ## Tags Trying #memos and #getting-started
Choose a visibility in the editor: PRIVATE, PROTECTED, PUBLIC or SPACE. New memos start as PRIVATE. To bring memos back, search with Quick Find or save a View. A View is a named filter, and opening it shows the memos that match right now.
tag in ["work"] && has_incomplete_tasks
created_ts >= now - duration("168h")
visibility == "PUBLIC"Those three come from the docs’ list of example Views. They find open work items, notes from the last week and public posts. Settings has an Export & Import page that moves one account’s memos as a ZIP. Since 26.10 an instance administrator exports, and every account can import.
You want a place for quick thoughts and a list of what is still open. You start the server with the command above, open http://localhost:5230 and create your account. In the composer you paste the first memo from the Getting Started page. Then you open Views from the sidebar, choose Create, give the View a title and enter the filter the docs give for unfinished tasks.
has_task_list && has_incomplete_tasks
Validate checks the filter without saving it, and Save adds the View to the sidebar. Opening it lists the memos that still have a task to do, which is how the docs say to keep browsing unfinished tasks.
If you are new. Self-hosted means the app runs on a computer you control, not on a company’s servers. A memo is one note, short or long. With the README’s command, everything Memos keeps sits in the ~/.memos folder, so that one folder is what you back up. The first account you create is the admin. New memos start as PRIVATE, so only you, and the instance’s administrators, can read them. Try the demo first if you only want to see how it feels.
For experts. In 0.31 the docs split the canonical address from the access policy. MEMOS_INSTANCE_URL sets the public address, and the ACCESS instance setting picks private or public. Changing the URL later never changes an existing policy. A fresh instance started with the quick-start command comes up private, because that command leaves the URL out.
All MEMOS_* variables map to command-line flags, and a flag beats its variable. MEMOS_DRIVER takes sqlite, mysql or postgres, and MEMOS_DSN carries the connection string. The Docker image also reads a _FILE suffix on any of them, so a Docker secret can supply the value. Since 26.10, declarative configuration files can manage identity providers, instance settings and bootstrap administrators. Memos applies them at startup unless MEMOS_CONFIG_APPLY is set to off.
Views use a subset of CEL that Memos translates for SQLite, MySQL and PostgreSQL, so a regular expression behaves as each engine does. New webhooks get a Standard Webhooks-compatible signing secret, older unsigned ones can generate one in the edit dialog, and a receiver should verify the raw body before it parses anything. On Kubernetes, a Service named memos injects MEMOS_PORT=tcp://10.x.x.x:5230. Memos cannot parse that and falls back to port 0, until you turn service links off or set the port yourself.
You run the server, so the care is yours. These points come from the README and the docs.
This kit holds setup notes only. Mindket wrote them. Memos itself comes from its maker's Docker image, release binaries and source code: https://github.com/usememos/memos
These notes are not made or endorsed by the Memos maintainers. The README says Memos is "an open-source, self-hosted note-taking app that brings your everyday thoughts together in a personal timeline." The documentation is at https://usememos.com/docs
License: MIT. The LICENSE file (https://github.com/usememos/memos/blob/main/LICENSE) is the standard MIT License text and reads "Copyright (c) 2025 Memos".
The documentation says Memos is self-hosted by design: you control the infrastructure, the storage and the access policy. Source: https://usememos.com/docs/configuration/security
neosmemo/memos, or as a release binary from the GitHub releases page, or from a build of the source. Source: https://usememos.com/docs/deploymemos_prod.db and an assets/ folder for uploaded files, kept under ~/.memos on the host in the Docker commands. The Storage page says attachments are stored in the database by default, with local files and S3-compatible storage as the other options. Source: https://usememos.com/docs/operations/backup-restoreamd64, arm64, armv7), macOS (Intel and Apple Silicon) or Windows (amd64). Source: https://usememos.com/docs/deploy/binaryWith Docker installed, the README gives this. Then open http://localhost:5230 and create the first account.
docker run -d \
--name memos \
-p 5230:5230 \
-v ~/.memos:/var/opt/memos \
neosmemo/memos:stable
Source: https://github.com/usememos/memos/blob/main/README.md. The README says everything Memos keeps is in ~/.memos, so that one folder is what you back up.
To update the Docker route, the Docker page gives these lines. The Upgrade page says to back up first, and that downgrading after a migration has run is not supported. Source: https://usememos.com/docs/deploy/docker
docker pull neosmemo/memos:stable
docker stop memos
docker rm memos
docker run -d \
--name memos \
--restart unless-stopped \
-p 5230:5230 \
-v ~/.memos:/var/opt/memos \
neosmemo/memos:stable
The README says releases are tagged YY.MM.N, release candidates YY.MM.N-rc.K, with no v prefix. The tag stable follows stable releases, a month tag such as 26.10 follows the newest stable release of that month, and canary follows development builds. Coming from a release before v0.31.0, it says to run v0.31.0 once first. The Upgrade page adds that a version earlier than 0.22 runs 0.25.3 first, then 0.31.0, then 26.10: see setup/backup-and-upgrade.md. Source: https://github.com/usememos/memos/blob/main/README.md
The pages these notes drew on give no uninstall steps. By hand, and this is Mindket's note, not the maker's: stop and remove the container with docker stop memos and docker rm memos. The data folder is separate, so removing the container does not delete your memos, and deleting ~/.memos does.
The pages these notes drew on say nothing about the server sending usage data. The Web Clipper page says the extension has no analytics, ads or usage tracking. Source: https://usememos.com/web-clipper
The pages do describe these outbound paths. Webhooks post to the addresses a user adds, and by default Memos refuses private addresses. An S3-compatible store is an attachment storage option. The API Reference lists an AI Service whose Transcribe call sends an audio file to the instance's configured transcription provider (https://usememos.com/docs/api/latest). The Web Clipper's guided setup uses a usememos.com account if you choose that path, and a direct connection needs none. Sources: https://usememos.com/docs/integrations/webhooks, https://usememos.com/docs/configuration/storage and https://usememos.com/web-clipper
README.md 7 KB setup/api-and-webhooks.md 5 KB setup/backup-and-upgrade.md 7 KB setup/binary.md 3 KB setup/claude-code.md 4 KB setup/docker-compose.md 2 KB setup/docker.md 6 KB setup/kubernetes.md 3 KB setup/other-mcp-clients.md 2 KB setup/reverse-proxy-and-https.md 3 KB setup/web-clipper.md 3 KB
Updated by Mindket to the current version of this kit.
Listed GitHub projects in the same category that share the most topics with this one.
| Product | Stars | Activity | Language | License | Last change |
|---|---|---|---|---|---|
| Memos This page | 64,351 | — | — | MIT | — |
| AFFiNEShares markdown · notes | 74,303 | — | — | — | — |
| OpenMausBotShares docker · self-hosted | 19,754 | Active | TypeScript | Apache-2.0 |
Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search and on Trendshift. Mindket doesn’t write or check them. Open one to read it where it was posted.
lmstudio-community · Kit
A GGUF conversion of the 27B Bonsai model for LM Studio, with a 3.80 GB Q1_0 language file and a 0.93 GB BF16 vision projector. Tested for text, vision and par…
LibertAIDAI · Kit
Runs DeepSeek-V4.1-Flash-1017 as a 2.9 bits-per-weight EXL3 quantization, a 196 GiB copy for people serving large models on their own hardware. Perplexity stay…
facebook · Kit
Generates short music clips from a text description or an audio prompt, in the small checkpoint of facebook's MusicGen. It suits developers and music hobbyists…
unclecode · Kit
UncleCode’s open source web crawler and scraper for language models and AI agents. It loads a page in a browser and returns clean Markdown, or JSON in a shape…
toeverything · Kit
An open-source, local-first workspace where docs, whiteboards and databases are built from the same blocks, so one doc reads as a page or opens as an endless c…
milind-soni · Kit
Gives you a team of AI bots in a desktop chat app, each one a Claude or Codex agent on your machine with its own cloud computer. Aimed at people who want an op…