Cover

I spent some time building a complete personal management system for myself with React + TypeScript.

Task management, bookkeeping, investment tracking, subscription tracking, knowledge management—everything is integrated into one system. There is no database. All data lives in local plain text files: YAML, Markdown, and CSV.

Why not Obsidian? Why not Notion?

Because I think by 2026, the answer to that question has changed.


In the past, choosing a tool was basically an exercise in compromise: this piece of software covers 80% of what I need, and for the remaining 20%, I either put up with it or patch it with plugins.

Obsidian is great, but its plugin ecosystem is still fundamentally about using someone else’s way of thinking to solve your problem. You have to learn their design logic, adapt to their data structures, and then hope the plugin does not get abandoned.

Notion is great too, but your data lives on someone else’s servers, and what you can do is boxed in by their APIs and templates.

I do not want to compromise anymore.


How good is AI at writing code now?

I can tell Claude Code, “add tag-based filtering,” and it will read my codebase, understand the data structures, write the code, and get it working—often in less than five minutes.

What does that mean?

It means you no longer need to adapt yourself to a system for the sake of one feature. Instead, the system adapts to you.

Want a calendar view? Add it. Want kanban drag-and-drop? Add it. Want automatic multi-currency conversion? Add it. Not by installing plugins, but by implementing it directly in your own codebase, exactly the way you want it.

That is what I mean by “AI-native”—not a system with an AI chat box embedded in it, but a system whose entire development and evolution is driven by AI.


More concretely, my Second Brain looks like this:

📋 Task management
Multiple workspaces, each with its own kanban stages, project categories, priorities, and tag system. You can switch freely between calendar, kanban, and list views. It supports drag-and-drop, advanced filtering, archiving, and filter state synced to the URL so views can be bookmarked directly.

💰 Finance tracking
Manage fixed-income and yield-bearing positions with support for segmented history, where principal and interest rates can change over time. It automatically calculates current earnings, projected month-end earnings, and maturity earnings. Multi-currency conversion is built in.

📊 Portfolio tracking
Track crypto, US stocks, Hong Kong stocks, A-shares, cash, and other asset types. It integrates CoinGecko price data, supports snapshots, and lets me see both net worth trends and asset allocation distribution.

📖 Bookkeeping
Supports hierarchical categories, with parent and child categories. Budgeting works across daily, monthly, quarterly, and yearly cycles. Multi-year records are stored in CSV files by year. It can also import bills from Suishouji and automatically match categories.

🔄 Subscription management
Flexible billing cycles including monthly, yearly, quarterly, semiannual, weekly, and custom intervals. It automatically calculates the next billing date, detects trial periods, and computes annualized monthly and yearly costs.

📚 Knowledge management
Markdown notes with YAML metadata, supporting bidirectional links, backlinks, and automatic related-note discovery. It uses a CodeMirror editor, supports direct image pasting, renders Mermaid diagrams, and provides full-text search with highlighting.

🏠 Dashboard
Weather, a daily quote, task statistics, and quick navigation. I can open it and immediately know what I should be doing today.

But the features are not the main point. The real point is the architectural philosophy behind the system:


1. All data is plain text

Tasks are Markdown. Metadata is YAML. Financial records are CSV. You can read them with cat, edit them with vim, and inspect every change with git diff. No binary blobs, no proprietary formats, no data locked inside a specific app.

Git becomes your version control and backup strategy. One git push, and your data is safe.

2. AI reads and writes your data directly

Because the data is plain text, AI agents can operate on it directly. I wrote a few skills for Claude Code:

  • Describe a task in natural language, and it automatically assigns priority, stage, tags, and project
  • Say “summarize last week’s work,” and it reads completed tasks to generate a weekly report
  • Ask “how much did this investment earn,” and it calculates the exact return using the right formula
  • Bookkeeping data can be imported automatically from Suishouji

There is no API wrapper and no middleware layer. The filesystem is the API.

3. The cost of customization is approaching zero

Want a new feature? Just describe what you want to AI.

The whole stack is React 19 + React Router 7 + TypeScript + Tailwind CSS. No heavy abstraction layers, no ORM, no state management framework. The data flow is simply: route loader reads files → render page → user action → action writes files.

AI can understand it, modify it, and run it.

That is what “AI-native” really means—not adding one AI feature into a product, but designing the product itself for collaboration with AI.

Some people might ask: isn’t it exhausting to build all of this yourself?


Honestly, yes, it did take a fair amount of time. But what I got in return was:

  • Zero compromise — every feature works the way I want
  • Full control — my data stays local, and I define the format
  • AI acceleration — new features ship much faster than I expected
  • Unlimited possibilities — I can build whatever I want, with no platform constraints

And most importantly, this system gets better the more I use it. Because AI keeps improving, and my system improves with it. I am not dependent on any company’s product roadmap, I do not worry about plugin authors disappearing, and I do not have to fear price hikes or platform lock-in.


We are at an interesting moment in time: AI has caused the cost of “reinventing the wheel” to collapse.

In the past, “don’t reinvent the wheel” was solid advice because building your own wheel was too expensive. But now? AI can help you build a wheel that fits your exact needs in minutes.

So my advice is this: if there are parts of existing tools that have been bothering you for a long time, stop settling.

Let AI help you build a system that truly belongs to you.

It is simpler than you think.


The project itself is not open source, but I have published the system design docs and README. If you are interested in this architecture, you can use them as a reference for building your own setup with AI:

👉 https://github.com/domechn/second-brain-design

Tech stack: React 19 / React Router 7 / TypeScript / Tailwind CSS 4 / shadcn/ui / Vite 7 / Bun

All data is stored locally, and the architectural ideas are directly reusable.

Built with plain text. Powered by AI. Owned by you. 🧠