Creating a Note-taking App - Notas

Creating a Note-taking App - Notas

Why create a note-taking app?

My daily life is closely tied to note-taking. There's a lot of information that if not written down somewhere, I know there's a high chance I'll forget it in the future. The information that needs to be noted includes personal and work-related matters.

Personal notes are diverse, they can be a new coffee recipe I found on YouTube, a cooking instruction, a shopping list for tomorrow, the day after tomorrow... Or sometimes it's just a short but important piece of information that I don't want to forget. In short, notes are for things we know we'll forget.

And what about work? Notes are also indispensable. They can be instructions for operating a tool or a system, useful commands, or system descriptions in preparation for important meetings... But during meetings, I prefer to bring a notebook and pen to take notes quickly, draw better diagrams instead of using my phone or computer.

Since I started writing, especially blogging, I have become more interested in note-taking apps for long articles. Ideas for articles can suddenly appear at any time, and if I don't quickly jot them down, they might be forgotten. I am particularly interested in simplicity, speed, good synchronization, and security, and it would be great if it also supports markdown.

Markdown is a text format that I find extremely useful until now. It provides an excellent combination of text and formatting. Just write, and the formatting is done through the way you write. In short, just write without worrying too much about formatting the text.

The most frequently used app before was Apple Notes. It is simple, focused on writing, does not support markdown, but compensates with excellent synchronization between devices in the "apple" ecosystem. The data is fully encrypted on iCloud, so it is very secure. Adding the feature of locking individual notes, some of which are very private, and only opening them when necessary, gives me peace of mind when using it.

The only limitation of Notes is the lack of markdown support. A few months ago, my old and worn-out "bunny ear" phone started to go on strike... so I had to replace it with a new Android device. That's when I discovered another problem: Notes does not support cross-platform usage.

The journey to find a note-taking app began. Honestly, I have researched and used many apps to find the most suitable one. But in return, the effort may not have reached full maturity.

Notion - or other All-in-one apps similar to Notion - is perhaps the most notable name. Powerful, feature-rich, capable of doing many things, but overall... more complex than necessary. After a period of experience, I feel that Notion is more suitable for task management rather than focusing on writing.

Bear Notes is perhaps the most valuable name. A beautiful, user-friendly, simple note-taking app that supports markdown. Writing notes on Bear feels great and it always makes me want to start writing immediately instead of thinking about whether I should write or not. Additionally, Bear has the tagging feature to categorize notes, making them easy to manage and retrieve later. Bear only has two downsides: it only supports Apple devices and requires payment for synchronization. But if this were a cross-platform app, I would be willing to pay to use this excellent app.

Simple Notes can replace Apple Notes or Bear in some aspects. Simple Notes is cross-platform, simple, and free, but it has too many limitations. It does not support markdown, does not have great security, and the interface is not very user-friendly (at least in my opinion). Simple Notes has the ability to synchronize, but they disclaim any responsibility for the information you store on it. Hmm... is it safe?

Because of all these reasons, I felt the need to "take action" and do something!

Notas

As a web developer, the first thing that came to my mind was that the app would run on the web. Combined with PWA, Notas will look like a "native" app that can be installed on a computer or pinned to the screen of a phone. Easy to find, easy to use, and easy to write.

Nuxt.js is a familiar application framework, so I used Nuxt.js to develop the Notas PWA note-taking app. The interactive features and logic handling of Nuxt.js work well and save a lot of time. DaisyUI - a CSS library based on Tailwind - is also suitable for creating a modern interface for Notas.

Another extremely important aspect is markdown support. For a note-taking app, writing takes up about 90% of the interaction time, so it is necessary to optimize the writing experience as much as possible. CKEditor could be a great editor, but its configuration is a bit complex. Instead, I chose another simpler and lighter option, Tiptap.

Notas needs a place to store data. Focusing on privacy and security, let users have control over where their data is stored. The initial idea is to create an Adapter layer for interacting with the database. That means not caring about what the actual database is, just write functions to retrieve data from somewhere. If done this way, I can write Adapters to use data from Local Storage, SQLite, or even through RESTful APIs.

Notas is currently in the process of building the interface and some main usage flows. Initially, Notas will meet the basic requirements of regular note-taking users, which means being able to manage notes and supporting markdown. Then, if there is time, I will continue to develop this application.

Notas Interface

After completing Notas, I will be the first to experience it for a period of time. Fix any bugs and make adjustments if necessary. Ultimately, my goal is to create an open-source product that anyone can use, contribute to, and further develop.

Conclusion

Building a note-taking app among dozens or even hundreds of existing apps may seem like a quirky idea and possibly "unnecessary work". I know many people have more extensive experience with note-taking, so I am very open to suggestions on how to do it. Additionally, any feedback on Notas is invaluable. Thank you!

or
* The summary newsletter is sent every 1-2 weeks, cancel anytime.
Author

Hello, my name is Hoai - a developer who tells stories through writing ✍️ and creating products 🚀. With many years of programming experience, I have contributed to various products that bring value to users at my workplace as well as to myself. My hobbies include reading, writing, and researching... I created this blog with the mission of delivering quality articles to the readers of 2coffee.dev.Follow me through these channels LinkedIn, Facebook, Instagram, Telegram.

Did you find this article helpful?
NoYes

Comments (0)

Leave a comment...