# I've Decided to Open Source My Personal Note-Taking Project After Two Years of Use

It's been two years since Rote was born. I've developed and refactored countless versions, and as of writing this article, there are already 860 commits. It has grown alongside me.
### Background
Regarding the birth of Rote, I won't shy away from saying that the inspiration came from the open-source project [usememos](https://usememos.com/). Earlier, I was a loyal user of usememos and even created an open-source mini-program client for usememos ([memos_wmp](https://github.com/Rabithua/memos_wmp)). However, I gradually felt that the project became bloated and complex, diverging more from my note-taking needs.
So I started developing [Rote](https://github.com/Rabithua/Rote) from scratch. The web version's interface and interaction design drew more inspiration from designs I liked on Twitter and the Tailwindcss website, achieving what I believe is a smooth and elegant responsive design.
Although there's an explore page and Reactions, I don't define it as a community. The explore page simply displays some users' public notes, just like I often make public some content I find interesting. Essentially, it's a side effect of the public notes feature.
For me, public notes are a way for people interested in me to quickly understand what I'm doing or what I'm interested in (you should know that after registering an account, everyone gets a public personal page, similar to my [personal homepage](https://beta.rote.ink/rabithua), like Telegram's Channel. I personally think it can also be used as a blog. Several years ago, I lost the energy to frequently write long-form content, so these note snippets are perfect—no pressure to write).
### Rote's Core Design Philosophy
- **Stay Restrained** - Everything for an elegant note-taking experience and restrained interaction
- **Low Mental Burden** - Less pressure and a simpler, more intuitive recording experience, even deployment experience
- **Open Interface** - Open API interfaces, supporting recording or retrieving data in any scenario
- **Unrestricted** - Complete control over your data, free to export data
### Supported Features
- **Self-Hosted** **Server** and **Web** (frontend-backend separation design)
- Simple deployment experience, quick start via `Docker compose` or `Dokploy` template [Deployment Documentation](https://beta.rote.ink/doc/selfhosted)
- [iOS Client](https://apps.apple.com/us/app/rote/id6755513897) supports any **self-hosted instance** (defaults to my hosted site, can switch to your own instance by clicking the welcome text in the top-left corner of the login page multiple times)
- Smooth web **responsive design** and immersive **PWA** support
- **OAuth** support, currently supports `GitHub` and `Apple Login`, `Google` is planned
- **RSS** support, similar to [RSS subscription](https://api.rote.ink/v2/api/rss/rabithua) you can subscribe to my updates
- **Reactions** anonymous users or logged-in users can react to their own or others' public notes
- **S3** storage support, defaults to `Cloudflare R2` storage, configuration can be skipped
- **Explore Page** to display all users' public note content on the site
- **Note tags**, **archive status**, **visibility status**, **attachments**
- Basic components: **heatmap**, **tag cloud**, **random review**, and **search** support
- **OpenKey** with permission control for partial use of selected capabilities (e.g., adding notes directly via `GET` requests)
- **Admin Dashboard** including site settings, storage settings, interface settings, user management, security settings, OAuth login
- Experimental features: **Service Worker** notifications (I want Rote to achieve instant notifications similar to `Bark`), **data export**, `EveryDayOneCat` widget 🐱
- **Public note direct link sharing** [Example Note](https://beta.rote.ink/rote/ad7c6701-d6de-4de0-9fe6-f89258db9da7), your **public personal homepage** [Rabithua](https://beta.rote.ink/rabithua)
- **Multi-language support** Chinese / English
## iOS Client Features
- Basic **note features** (**Create, Read, Update, Delete**)
- **Personal information** and **personal homepage**
- **Explore page** (can see others' interesting public content and add **Reactions**)
- **Generate note sharing image** (long press on note)
- **Customize interface display** (text weight and size, whether to show avatars, color theme preference, whether to enable haptic feedback)
- **Statistics page** (current note data accumulation is poor, future client will focus on this)
- Several intuitive **widgets** (**Recent Notes**, **Random Note**, **Heatmap**)
- **Shortcuts**, manually trigger shortcuts after copying content to quickly record notes (currently unstable, may have issues in different language environments or special content situations)
- **Search notes** by `tag`/`visibility`/`archived status`/`time`/`keyword`
- Very smooth **timeline view**
- **Multi-language support** Simplified Chinese / Traditional Chinese / English / Japanese / Korean
- **iOS** intuitive **native interaction experience**
- Cute unknown creature with grass on its head
- Unknown **Easter eggs**
The Rote iOS client is currently not open source. I'm ashamed to say that due to financial constraints, I'm considering making the Rote client a paid project to make a living (currently still free to download). If one day I'm no longer worried about making a living, I'll open source it.
**Get Started >>** **[Demo](https://demo.rote.ink/)** | **[Github](https://github.com/Rabithua/Rote)** | **[Website](https://beta.rote.ink)** | **[iOS APP](https://apps.apple.com/us/app/rote/id6755513897)** | **[Explore](https://beta.rote.ink/explore)** | **[Rabithua](https://beta.rote.ink/rabithua)**
