# NoteGen: a local-first Markdown app that captures fragments before you organize them

> NoteGen separates capture from organization and keeps your notes as ordinary Markdown files in a workspace you choose. It is a desktop-first Tauri app with AI features you configure yourself, and it is still in beta on every platform.

**codexu/note-gen** — Project brief: A cross-platform Markdown AI note-taking software. It is to make sure useful fragments do not disappear before you have time to turn them into something complete.

- Repository: https://github.com/codexu/note-gen
- Website: https://notegen.top
- Stars: 12,860 · Forks: 975
- Language: TypeScript
- License: GPL-3.0
- Published: 2026-08-08 · Updated: 2026-08-18 · Language: en
- Canonical page: https://hysenlabs.com/projects/codexu-note-gen

## The problem NoteGen targets: fragments that die in the capture app

Most note tools ask you to commit to structure at the worst possible moment. You have half a thought, a screenshot, a link, and the app wants a title, a folder, and a template. NoteGen inverts that order. The README states the goal plainly: the project exists so that useful fragments do not disappear before you have time to turn them into something complete.

The intended user is someone who collects material all week and writes later. The README's own examples are concrete: record parts of a meeting, add two screenshots, organize them into meeting notes afterward; save links and reading fragments during the week, then turn them into a research note; filter recent records by tag and prepare a weekly report without searching through several apps.

That is a narrower audience than "everyone who takes notes." If you write in one sitting and never revisit raw material, the capture layer is overhead. The value shows up when the gap between saving something and using it is measured in days.

## How the capture-to-note pipeline actually works

The workflow in the README has four stages. First, capture a thought, voice recording, screenshot, image, link, file, or todo as it appears. Second, filter records by tag, time, or type and select the ones that belong together. Third, choose a template or describe what you want written, and NoteGen organizes the selected material into a summary, report, article, or another Markdown structure. Fourth, review the draft in the editor, change the structure, and continue writing yourself.

The important architectural claim is what sits underneath. Written notes stay as ordinary Markdown files in a workspace you choose. The README says you can edit them with NoteGen, open them with another Markdown editor, keep them in Git, or move them without exporting from a proprietary format. Recording, AI, search, and organization are layers around those files, not a replacement for them.

On the implementation side, the repository is a Next.js frontend (next.config.ts, src/) wrapped in Tauri (src-tauri/), with pnpm as the package manager and a plugin runtime built separately by esbuild into public/plugin-runtime.js. That plugin runtime is a real design decision: third-party extensions run as a bundled browser-targeted worker rather than in the app's main process. The dev and start scripts both bind port 3456, which is worth knowing if you run the web build alongside another service.

## Installing NoteGen and saving your first record

NoteGen ships as a desktop download rather than an npm package, so installation means grabbing a build. The README's download table lists Windows, macOS, and Linux as beta, Android as alpha for ARM64, and iOS as alpha through TestFlight. GitHub Releases are described as a fallback mirror.

Start by downloading the build for your platform from the project's download page:

```bash
# macOS, Windows, Linux: download from https://notegen.top/en/download
# GitHub Releases are the fallback mirror:
# https://github.com/codexu/note-gen/releases/latest
```

If you would rather run from source, the repository's package.json defines the scripts. You will need pnpm and the Tauri toolchain for the desktop shell:

```bash
pnpm install
pnpm dev
```

The dev script builds the plugin runtime first and then starts Next.js with Turbopack on port 3456, bound to 0.0.0.0. You should see the app served on that port; the Tauri wrapper is started separately through the tauri script.

Once the app is running, the getting-started sequence in the README is short. Choose a workspace for your Markdown files, add your first record or create a note directly, and configure an AI provider only when you want the AI features. The README is explicit that you do not need to configure every feature before writing your first note. That ordering is the right one to follow: point the workspace at a folder you already keep in Git, save a few records, and confirm the files land where you expect before touching model settings.

## Where NoteGen gets in your way

The platform status table is the first honest constraint. Windows, macOS, and Linux are beta. Android is alpha and ARM64 only. iOS is alpha and distributed through TestFlight, which means an invite link rather than a store listing. If your workflow depends on a phone client that behaves like the desktop one, the README gives you no basis for that expectation.

The AI side is bring-your-own-provider. NoteGen connects to the providers and models you configure, and the README lists separate model roles for chat, writing, embeddings, image recognition, OCR, and audio. Nothing in the README suggests a bundled model or a free hosted tier. The repository does carry a sponsorship section for a third-party API service, and the README notes that registering through that link yields test credit after a first call, but that is a promotion, not a default. Budget for your own API keys.

The knowledge base is the other place to look before adopting. The README mentions vector indexing, hybrid retrieval, and configurable embedding and reranking models. Running embeddings over a large existing vault is a real cost in both time and API spend, and the README does not document the indexing throughput or what happens to the index when files change outside the app. If you edit the same Markdown files in another editor, that question matters and the documentation is silent on it.

Finally, the project is not archived and the last push was on 2026-08-26, with note-gen-v0.36.0 released the same day. That is a recent cadence, but it also means the 0.x version numbers in the release list are not decoration. Treat the desktop builds as usable and the mobile builds as unfinished.

## NoteGen versus Obsidian and other file-first editors

The closest comparison is Obsidian, because both keep notes as plain Markdown in a folder you control. The difference is where each puts the center of gravity. Obsidian is a linking and browsing environment: you write notes, connect them, and the graph and plugins grow out of that. NoteGen is a capture inbox with an organizer attached. The records layer, the tag and time filters, and the organize-into-a-note step have no direct equivalent in a plain Markdown editor.

Against a cloud note service, the trade is reversed. A hosted service handles sync, search, and mobile for you. NoteGen asks you to pick a backend: the README lists GitHub, GitLab, Gitee, Gitea, S3-compatible storage, and WebDAV, plus local backups without cloud sync. That is more setup and more places for credentials to live, but the failure mode is different. If the project stops, your files are still files.

There is also a canvas workspace for flowcharts, mind maps, timelines, freehand drawings, and data charts, with elements remaining editable after creation, including AI-suggested content. That overlaps with dedicated diagramming tools, and the README does not claim to replace them. If your diagram needs are heavy, keep the dedicated tool.

## Licence, upgrade cost, and what you are signing up for

NoteGen is licensed under GPL-3.0, per the repository's LICENSE file and the badge in the README. For individual use this is unremarkable. For anyone planning to embed NoteGen in a distributed product, the copyleft terms are the thing to read carefully, and the README's contributing guide is the entry point for changes you intend to send upstream. This is not legal advice; if you are shipping something, have someone qualified read the licence.

Upgrade cost is the part the README does not address. There is no documented migration path between releases, no statement about workspace schema changes, and no rollback instructions. The release list shows frequent point releases (0.34.1, 0.35.1, 0.36.0 within three weeks), which is normal for a 0.x project but means you should assume the occasional manual fix. Keeping the workspace in Git is the cheap insurance here, and the README explicitly supports that: you can keep the files in Git and move them without exporting. It also means an upgrade that goes wrong is recoverable at the file level even when the app offers no rollback.

The plugin contract has its own version check script (plugin-api:check-version, backed by scripts/check-plugin-contract.py), which suggests installed Skills and plugins may need attention across releases. If you rely on third-party extensions, check that script's output before upgrading.

## Conclusion

Adopt NoteGen if you already live in Markdown files and want a capture inbox that feeds them, and if you are willing to configure your own AI provider. Skip it if you need a stable mobile client, since Android and iOS are listed as alpha, or if you want a hosted service that manages your notes for you. Before committing, download the build for your platform, point a workspace at a folder of existing Markdown files, and confirm two things: that sync through your chosen backend (GitHub, GitLab, Gitee, Gitea, S3-compatible storage or WebDAV) round-trips without rewriting files, and that the AI provider you intend to use is accepted under the chat, embedding and OCR model settings. The licence question is settled by the repository: GPL-3.0, so check compatibility with your own distribution plans before you build on it.

## FAQ

### What is NoteGen used for?

NoteGen is a local-first Markdown note-taking app for capturing scattered fragments (thoughts, voice recordings, screenshots, images, links, files, todos) and later organizing selected records into structured Markdown notes with AI. The README's examples include meeting notes, research notes, weekly reports, and question answering over collected material.

### Is NoteGen free?

The application is open source under GPL-3.0 and the README points to a download page rather than a paid tier. AI features require you to configure your own provider and models, so any cost comes from the API service you choose, not from NoteGen itself.

### What is the best free note taker app?

The material only describes NoteGen, which is free to download and open source, keeps notes as ordinary Markdown files in a workspace you choose, and lists Windows, macOS, and Linux builds as beta with Android and iOS as alpha. Whether it is best for you depends on whether the capture-then-organize workflow matches how you work.

### What is the best app for transcribing notes?

NoteGen accepts voice recordings as a record type and lists audio among the model roles you can configure, so transcription depends on the provider you connect rather than on a built-in engine. The README does not name a specific transcription model or claim accuracy figures.

## Sources

- [Official documentation](https://notegen.top)
- [Official README](https://github.com/codexu/note-gen#readme)
- [Project repository](https://github.com/codexu/note-gen)
- [Release notes](https://github.com/codexu/note-gen/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/codexu-note-gen
