At the very beginning of a Note there should be a short overview of the topics/concepts included in the note. This note provides general guidelines on how to style a markdown file to make your notes more readable and coherent. ## Headers Headers inside markdown are used to segment different sections of a note into a more readable structure. A header in the Mardown standard is a line starting with a `#` Symbol, followed by a space and the header title. ### Header levels Header levels are determined by the amount of `#` symbols before the header title, where each lower level header belongs to its preceding higher level header: ```markdown # This is a level 1 header ## This is a level 2 header ### This is a level 3 header [...] ``` According to [Google's Markdown Style guide](https://google.github.io/styleguide/docguide/style.html) you should avoid using the Header 1 (# Heading 1) inside the note body. Obsidian inserts the filename of the `.md` file as the Header 1 automatically, if you would rename the first H1 of a file it will rename the `.md` file inside your filesystem and vice versa. Therefore to avoid confusion the level 1 header should be reserved for the Note Title itself and must not be used inside the Note body. Key points: - headers are defined in the markdown standard by a line starting with a `#` - the number of `#` Symbols determines the level of the header - each lower level header is a sub header to its preceding higher level header - first level headers (Header 1/ # Header 1) should only be used once for the title of the .md file. - Obsidian adds the Filename as the level 1 Header automatically - therefore, headers inside `.md` notes should always start at the second level (Header 2 / ## Header 2) ### Header spacing To improve readability, you should always precede and follow a header with a line break, e.g. : ```markdown ## Header Text body ## Another Header Text body ``` ### Header Underlines When markdown is rendered in a program like VScode or on a website like Gitlab often the higher level headers are automatically rendered with an underline. This underline can be manually added under a header in markdown by writing 3 equal signs or 3 `-` e.g.: ``` ## Header 1 --- ## Header 2 === ``` While manual underlines can make headers stand out, they should be avoided for a few reasons: 1. It must be maintained by hand in every note you write. This can cause more work when e.g. changing levels of your headers. 2. Programs that render Underlines automatically for higher level headers will now have 2 underlines, the one that is automatically rendered and the one you inserted by hand. Alternatively, if you like the look that is added by the underline, you can also configure some themes inside Obsidian to automatically render an underline for higher level headers. For the minimal theme you will need the [Style Settings](https://github.com/mgmeyers/obsidian-style-settings) Plugin, you are then able to toggle the `divider line` for each heading level.