DEV Community

Cover image for How I handle my notes with symbolic links
John Cheng for Futurice

Posted on

5 3

How I handle my notes with symbolic links

Background

Handling notes has always been tricky for me. Should I use an app or have markdowns in a folder?

Lately, I decided to only use markdowns and have them centralised in a folder called notes while making them accessible in the relevant projects via symbolic links.

Objectives:

  1. Access only project specific notes in VSCode (or any IDE)
  2. Keep a folder containing all of my notes

How-To

Architecture

~
|-- .gitignore_global
|-- Documents/
    |-- notes/
        |-- project_foo/
    |-- project_foo/
        |-- .notes/ (ignore from version control)
Enter fullscreen mode Exit fullscreen mode

Instructions

The first step is to have the version control ignore the notes in each projects. For example, I decided to have my notes in a .notes folder under each project.

# Create a global gitignore
touch ~/.gitignore_global

# Add the folder that will contain the notes in each project
echo .notes >> ~/.gitignore_global

# Add the global gitignore to the git configurations
git config --global core.excludesfile ~/.gitignore_global
Enter fullscreen mode Exit fullscreen mode

Now, let's create the folder that will contain all the notes:

# Create the folder where all the notes will be centralised
mkdir ~/Documents/notes
Enter fullscreen mode Exit fullscreen mode

Finally, let's say we have a project called project_foo. We can now create the folder that will contain the notes and link it:

# Create the folder where the project specific notes will be found
mkdir ~/Documents/notes/project_foo

# Link the project specific notes folder into the project
ln -s ~/Documents/notes/project_foo ~/Documents/project_foo/.notes
Enter fullscreen mode Exit fullscreen mode

Summary

  • Folder notes contains all the notes
  • Each project has a .notes folder with only related notes and ignored by version control
  • All the notes are synced between the notes folder and the .notes one in each project

Thanks to this architecture, I am now able to access my project's notes in my IDE directly and avoid using another app for that. To add to that, because they are synced in the notes folder, I still have the possibility to open all my notes at once if needed.

Final words

Thank you for reading my first ever blog post and I hope it helps some of you :)

Let me know your thoughts and/or improvements!

Photo by David Travis

Image of Stellar post

Check out Episode 1: How a Hackathon Project Became a Web3 Startup 🚀

Ever wondered what it takes to build a web3 startup from scratch? In the Stellar Dev Diaries series, we follow the journey of a team of developers building on the Stellar Network as they go from hackathon win to getting funded and launching on mainnet.

Read more

Top comments (1)

Collapse
 
hamatti profile image
Juha-Matti Santala •

This is such a cool idea! My notes are bit all over the place and I haven't yet found a good solutions that fits my workflow but this seems interesting, I might give it a try.

Image of Stellar post

Check out Episode 1: How a Hackathon Project Became a Web3 Startup 🚀

Ever wondered what it takes to build a web3 startup from scratch? In the Stellar Dev Diaries series, we follow the journey of a team of developers building on the Stellar Network as they go from hackathon win to getting funded and launching on mainnet.

Read more

đź‘‹ Kindness is contagious

Engage with a wealth of insights in this thoughtful article, cherished by the supportive DEV Community. Coders of every background are encouraged to bring their perspectives and bolster our collective wisdom.

A sincere “thank you” often brightens someone’s day—share yours in the comments below!

On DEV, the act of sharing knowledge eases our journey and forges stronger community ties. Found value in this? A quick thank-you to the author can make a world of difference.

Okay