DEV Community

Tuna Çağlar Gümüş
Tuna Çağlar Gümüş

Posted on

📝 A way to create your own, multi device supported, cloud based markdown and note taking platform.

Hello, 👋

I wanted to get my hands on a native markdown editor that I can store my drafts and notes online.

Here is what I was looking for;

  • It should have native apps for Microsoft, Linux, Mac OS & iOS because I wouldn't say I like to write in browsers.

    I never used twitter in a mobile browser. Don't judge me.

  • All my markdown formatted notes and the draft should be in sync between apps.

  • I should be able to continue where I left off, no matter which computer or phone I'm using.

  • It should look cool because bad design drains my all will to write.

  • I don't care live preview, but it should at least have a syntax highlighting.

  • It should be free!

Actually, I know it is never free to run a server, but paying a monthly fee to store my kilobyte sized MD files is not for me. 😄

My search for this kind of product continued several weeks until I decided to do something myself. Here is what I found;

  • notion.so: free until 5MB but has native app support. synchronization between documents and has a good design.
  • bear app: none web, none PC but has a good design and markdown oriented app. It has a $1.5 monthly subscription model for synchronized documents.
  • ai-writer: $19 per month for a basic plan but has a good support app for those who write books and lengthy documentation or maybe papers.
  • typora: awesome markdown native app. it is free but doesn't sync docs across your devices. Non-mobile.

These were the ones that took my attention. There are nearly hundreds of solutions that I can choose, but none of them cover all my "incredible" standards 😄

you need standards

My proposal

I noticed i can use my server as a markdown library in the cloud. I would store my files in it, but how I have a native app to edit these files? How I access them from everywhere? How fast will it be? How cool will it be? :)

My solution was simple but effective.

  • I will create a "notes" folder in my cloud server. It will be in sync always :)
  • I will access it from everywhere with SSH connection.
  • I will install the necessary VIM extension, so Markdown syntax highlighting will be there.
  • I will use Termius for the mobile, console for Mac & PC. At least, they are not browsers. Also, I can continue writing from where I left off.
  • It will be free. No monthly fee's or limited resources. (No addition to my current bill.)
  • I can install any theme, plugin, and font to my system and use them in VIM. So it will be cool!

Lets get to work 👨🏽‍💻

Login to your server by doing ssh username@111.222.333.444. Enter your username and password. Go to your home folder by doing cd /home.
Create your markdown library folder.

mkdir notes

This will create a notes folder in your home directory. Now we can create and edit files in it with Vim. Vim is a clone, with additions, of Bill Joy's vi text editor program for Unix. Sometimes it is hard for beginners to use it. Because of that, we will use Kakoune. Kakoune is a code editor that implements Vi's "keystrokes as a text editing language" model. As it's also a modal editor, it is somewhat similar to the Vim editor (after which Kakoune was originally inspired).

Install Kakoune for ubuntu by doing

sudo apt install libncursesw5-dev pkg-config
git clone https://github.com/mawww/kakoune.git && cd kakoune/src
make
PREFIX=$HOME/.local make install

for mac

brew install kakoune

That's it. After that, you only need to create your MD files and start taking notes on it. To create a new file, you do

kak newfile.md

This will create a new markdown file and open it. To enter edit mode, click i button. Then write your note.

To save it, click esc then write :wq (write and quit).

That's all. Now you can access your server by using the Termius app and write your note on Kakoune with your phone, then continue writing from your pc or mac by simply using any terminal you have. You can always add new features to this simple platform by adding new extensions.

A screenshot of one of my drafts.

result

Thank you for your time. Best regards,
Tuna

Top comments (0)