https://github.com/caledoniaproject/notes-local
Built my own editor—again—because why not be awesome? This time, it's privacy-first, powered by ElasticSearch, a Golang API server, and a React frontend.
https://github.com/caledoniaproject/notes-local
Last synced: 8 months ago
JSON representation
Built my own editor—again—because why not be awesome? This time, it's privacy-first, powered by ElasticSearch, a Golang API server, and a React frontend.
- Host: GitHub
- URL: https://github.com/caledoniaproject/notes-local
- Owner: CaledoniaProject
- Created: 2025-06-26T13:32:35.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-06-26T14:23:35.000Z (about 1 year ago)
- Last Synced: 2025-06-26T14:46:11.955Z (about 1 year ago)
- Language: TypeScript
- Size: 1.27 MB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# 📁 Local Notes
I needed an editor to handle all my research and corporate documents—something that supports both basic Markdown and advanced features like mindmaps and flowcharts. **Draw.io** is perfect for procedural diagrams, and **Tiptap** gives me the rich editing foundation I want.
I tried Notion, but it's sluggish (probably network issues), and I worry about lock-in or losing access to my data. Privacy is another big concern.
So, once again—why not build my own editor?
This project gives me full control:
I can tailor the workflow, customize ElasticSearch mappings for powerful search, and design every detail to fit my needs.
It also features a powerful document tree component, with search, filtering, and highlight support for matching titles. The result? Fast navigation straight to the leaf nodes. Awesome!
---
# ✨ Key Features
## ✍️ Text Editor
- **Rich Text Editing** with [Tiptap](https://tiptap.dev/)
- **Draw.io Plugin** – Render and edit diagrams in place, double click to edit
- **Mindmap Plugin** – Edit and view mindmaps directly, double click to edit
- **Advanced Tables** – Context menus and smart table UX

- **Multi-Column Layouts** – Inline column block support

## 🌲 Tree View
Advanced document tree with search & filtering, and real-time highlighting of matches

Instant navigation to leaf nodes

---
# 🔐 Privacy First
All data stays in your infrastructure. No third-party tracking, no cloud lock-in.
Built from scratch to prioritize **security** and **data ownership**.
---
# 🛠️ Tech Stack
| Layer | Tech |
|----------|-------------------------------------------|
| Editor | Tiptap |
| Frontend | React + TypeScript + Vite + Tailwind UI |
| Backend | Golang API + ElasticSearch |
---
# 🚀 How to Use
This repository only includes the **UI layer**.
To connect it to your backend:
1. **Clone this project**
2. Open `src/api.ts`
3. Modify the API base URLs to match your own:
- API server endpoint
- Upload file server (if separate)
4. Run the development server:
```bash
npm install
npm run dev
```
💡 The backend is not included FOR NOW. You are expected to bring your own API and storage implementation.