Skip to main content

๐Ÿ“ Lesson 5.2: Themes, Appearance & CSS Snippets

A tool you enjoy looking at is a tool you'll keep opening. In this lesson we make Obsidian yours โ€” the right colors, a comfortable font, a theme that fits your taste, and a first, gentle taste of CSS for the fine details. The best part: almost all of it happens with clicks, not code.

๐Ÿ“š What You'll Learn

By the end of this lesson, you will be able to:

  • Adjust Appearance settings โ€” light/dark scheme, font, font size, readable line length, and translucency
  • Install and switch community themes and name a few popular ones and their vibe
  • Use the Style Settings plugin to customize a theme deeply without writing code
  • Add a small, safe CSS snippet to .obsidian/snippets/ and target one note with the cssclasses property

โฑ๏ธ Estimated Time: 55 minutes

๐ŸŽฏ Project: Pick a theme you love, then write one tiny CSS snippet, drop it in your snippets folder, and enable it.

In This Lesson

Why Appearance Matters

It's tempting to file "how it looks" under vanity. Resist that. The tool you spend hours in every week should feel good โ€” comfortable to read, easy on the eyes, quietly pleasant to open. Comfort isn't a luxury here; it's what keeps you coming back, and a habit you keep is worth more than a system you admire from a distance.

There's also a practical dimension. A too-wide line of text is genuinely harder to read; a font that strains your eyes at night costs you focus; the right contrast reduces fatigue over a long writing session. Good appearance settings are ergonomics, not decoration.

๐Ÿง  Mindset

You do not need to build the stunning, minimalist vaults you see in screenshots online. Those are often hours of tinkering by people who enjoy tinkering. Your goal is much kinder: a setup that feels calm and readable to you, reached in fifteen minutes of clicking. If plain default Obsidian already feels good, you're allowed to change almost nothing. Aesthetics serve the notes, never the other way around.

Here's the ladder we'll climb โ€” from the easiest, safest changes to the most powerful. Most people never need to leave the first two rungs.

graph LR A["1 ยท Appearance settings
(clicks, zero risk)"] --> B["2 ยท Community themes
(one-click install)"] B --> C["3 ยท Style Settings plugin
(customize, still no code)"] C --> D["4 ยท CSS snippets
(optional, small, precise)"]

The Appearance Settings Tour

Open Settings โ†’ Appearance. Everything here is a click, and nothing you change can harm your notes โ€” it only affects how the app looks. Let's walk the most useful controls.

  • Base color scheme โ€” Light, Dark, or "Adapt to system" (follow your OS). This is the big one. Many themes are designed with one in mind, so try both after installing a theme.
  • Accent color โ€” the highlight color used for links, the active line, buttons, and the like. A tiny change that makes the app feel personal instantly.
  • Font โ€” separate settings for the interface font, the text/editor font, and the monospace font (used in code). You can pick any font installed on your computer.
  • Font size โ€” a base size (often shown as a percentage or zoom) for comfortable reading. Bump it up if you find yourself leaning in.
  • Readable line length โ€” when on, Obsidian caps how wide a line of text gets so your eye doesn't have to travel too far. Leave it on for prose; turn it off when you want wide tables to breathe.
  • Translucent window โ€” makes the app background slightly see-through (a frosted-glass effect). Purely cosmetic, and can affect performance a little; try it and keep it only if you love it.
  • Show ribbon / tab settings โ€” small toggles for the left ribbon of icons and how tabs behave. Tidy these to taste.

โœ… Pro Tip

Turn Readable line length on and set a comfortable font size first, before you go theme-shopping. These two changes deliver most of the reading-comfort benefit and they apply to every theme, so you'll judge themes on a page that already feels good.

๐Ÿ’ก Note: Appearance settings and themes are stored per-vault in the hidden .obsidian folder, not in your notes. Your Markdown files are untouched by anything in this lesson โ€” which means you can experiment freely and reset with zero risk to your writing.

Installing Community Themes

A theme is a complete visual redesign of Obsidian โ€” colors, spacing, fonts, the shape of buttons and callouts, the whole feel. The community has built hundreds, and installing one takes a single click.

๐Ÿ“– Definition

A theme is, under the hood, just a CSS file the community wrote to restyle the app. Because it's only styling, a theme never touches your notes and can be switched or removed instantly. Trying a theme is completely reversible.

How to browse and install

  1. Go to Settings โ†’ Appearance and find the Themes section.
  2. Click Manage to open the community theme browser.
  3. Browse or search, click a theme to preview its description and screenshots, then Install and use.
  4. The theme applies immediately. To go back, choose the Default theme again โ€” no harm done.

You can install several themes and switch between them from the dropdown to find your favorite. Since each is just a style file, keeping a couple around costs you nothing.

โš ๏ธ Watch Out

A theme designed for dark mode can look off in light mode and vice versa. If a freshly installed theme seems broken or washed out, flip the base color scheme (Section 2) โ€” you're probably in the mode the theme wasn't built for. Also, occasionally a theme lags behind an Obsidian update and a small element looks wrong; switching back to Default confirms whether the theme is the cause.

Popular Themes & Their Vibe

Themes are personal, so treat these as starting points, not recommendations to follow. Here are a few widely loved ones and the general feel each aims for. Availability and exact features change over time, so preview them yourself rather than taking my word.

Theme General vibe Good if you likeโ€ฆ
Minimal Clean, understated, distraction-free; highly configurable via Style Settings A calm, flexible base you can tune endlessly without code
Things Bright, friendly, inspired by the Things task app; soft cards and rounded edges A cheerful, polished light look
AnuPpuccin Rich, colorful palettes (built around the popular "Catppuccin" color sets); lots of options Cozy, cohesive colors and deep customization
Blue Topaz Feature-packed and heavily customizable, with many built-in style options Maximum out-of-the-box variety and controls

๐Ÿ’ก A gentle recommendation

If you're not sure where to start, try Minimal paired with the Style Settings plugin (next section). Together they let you reshape almost everything โ€” density, colors, fonts, headings โ€” from a menu of toggles and sliders, no CSS required. It's the most approachable path to a highly personal look.

Style Settings: Customize Without Code

Here's the plugin that spares most people from ever touching CSS. Style Settings is a community plugin (we cover installing community plugins properly in Module 6, but it's worth knowing now) that reads the customization options a theme author built in and turns them into a friendly control panel โ€” toggles, dropdowns, color pickers, sliders.

With a theme like Minimal or AnuPpuccin installed alongside Style Settings, you can:

  • Switch between the theme's built-in color palettes
  • Adjust heading sizes and colors
  • Change spacing and density (comfortable vs compact)
  • Tweak callout colors, card styles, and accent hues
  • Toggle little features on and off โ€” all from a menu

To use it, install the Style Settings plugin, then open its panel (via the command palette, "Style Settings," or its settings tab). Only themes that were built to expose options will show controls โ€” which is exactly why Minimal and AnuPpuccin are recommended: they expose a lot.

โœ… Pro Tip

Before you write a single line of CSS, check whether Style Settings already offers the change you want. Nine times out of ten it does โ€” as a safe, reversible toggle that survives theme updates. Reserve custom CSS for the last one time out of ten.

Your First CSS Snippets

Everything so far has been codeless. Now, purely optionally, let's peek at CSS snippets โ€” tiny style files you write to tweak one specific thing the settings and themes don't expose. This is the "power user" rung of the ladder, and it's completely fine to skip it.

๐Ÿ“– Definition

A CSS snippet is a small .css file you place in your vault's snippets folder to override or add styling. Unlike a full theme, a snippet changes just the handful of things you care about, layered on top of whatever theme you're using.

Where snippets live, and how to enable one

  1. Snippets go in the hidden folder .obsidian/snippets/ inside your vault. The easiest way to get there: Settings โ†’ Appearance โ†’ CSS snippets and click the folder icon, which opens that folder for you.
  2. Create a new plain-text file ending in .css (for example my-tweaks.css) and put your CSS inside it.
  3. Back in Settings โ†’ Appearance โ†’ CSS snippets, click the reload icon so Obsidian sees the new file, then flip its toggle on.
  4. The change applies instantly. Toggle it off to disable it; delete the file to remove it entirely.

Two safe beginner snippets

Here are small, correct examples you can copy. They're deliberately gentle โ€” nothing here can hurt your notes, and toggling the snippet off reverses everything.

1. Give "note" callouts a custom accent color. This tints the accent color used by > [!note] callouts:

/* Recolor the "note" callout accent */
.callout[data-callout="note"] {
    --callout-color: 130, 90, 220; /* R, G, B โ€” a soft purple */
}

Obsidian's callouts read their accent from the --callout-color variable, given as three comma-separated RGB numbers. Change the numbers to taste; the border and icon tint follow.

2. Let tables use the full width of the note. Handy if you turned off Readable line length only for tables, or you just like roomy tables:

/* Wider tables that fill the available space */
.markdown-rendered table {
    width: 100%;
    display: table;
}

And a third, if you like: hide the left ribbon of icons for a cleaner edge (you can still reach everything via the command palette):

/* Hide the left ribbon for a minimal look */
.workspace-ribbon.side-dock-ribbon {
    display: none;
}

โš ๏ธ Watch Out

CSS class names inside Obsidian can shift between versions, so a snippet that works today may need a small tweak after a major update. That's normal โ€” and it's exactly why Style Settings is the safer bet for anything it can do: theme authors keep those options working across updates, whereas your hand-written selectors are on you. Keep snippets short and few, and you'll rarely hit trouble.

๐Ÿ’ก Remember: CSS is entirely optional. You can build a gorgeous, comfortable vault with Appearance settings, a good theme, and Style Settings alone. Reach for a snippet only when there's one specific thing left that you can't change any other way.

Styling One Note with cssclasses

Sometimes you want a style that applies to one note (or a category of notes), not the whole vault โ€” say, a wider layout for a note full of tables, or a special look for your daily notes. Obsidian gives you a clean hook for this: the cssclasses property in a note's frontmatter.

Add a cssclasses property at the top of a note, and Obsidian applies that class name to the note's view. Your snippet can then target it. For example, put this frontmatter on a note:

---
cssclasses:
  - wide-note
---

โ€ฆand this snippet styles only notes that carry the wide-note class:

/* Applies only to notes with cssclasses: wide-note */
.wide-note.markdown-rendered {
    max-width: none;
}

Now that one note stretches wide while the rest of your vault keeps its comfortable reading width. This is the tidy, targeted way to make exceptions โ€” no global override, no side effects on other notes.

๐Ÿ’ก Why this is the "Obsidian way"

Notice how cssclasses keeps the intent ("this is a wide note") in the note's own plain-text frontmatter, while the styling lives in a snippet. Your file stays portable and readable anywhere; the look is layered on top. That separation is exactly the local-first spirit we've followed all course.

๐ŸŽฏ Quick Quiz

Question 1: Where do CSS snippet files live, and how do you turn one on?

Question 2: You want to deeply customize a theme's colors and spacing but you don't know CSS. What's the best tool?

๐ŸŽฏ Project: Theme + One Snippet

Let's make your vault feel like yours. You'll dial in Appearance, install a theme you actually like, and then โ€” for the satisfaction of it โ€” write and enable one tiny CSS snippet.

๐Ÿ‹๏ธ Dress your vault

Objective: A look you enjoy, plus your first working snippet.

Instructions (about 20 minutes):

  1. (4 min) In Settings โ†’ Appearance, set your base color scheme, turn on Readable line length, and pick a comfortable font size and accent color.
  2. (5 min) Click Themes โ†’ Manage, preview a couple of themes (try Minimal), and Install and use the one you like best. Flip light/dark to see it both ways.
  3. (4 min) Open Settings โ†’ Appearance โ†’ CSS snippets, click the folder icon to open .obsidian/snippets/, and create a file called my-tweaks.css.
  4. (4 min) Paste in one of the snippets from Section 6 (the callout color one is a nice, visible choice). Save the file.
  5. (2 min) Back in the CSS snippets list, click reload, then toggle your snippet on. Open a note with a > [!note] callout to see the change.
  6. (1 min) Bonus: add cssclasses: [wide-note] to one note plus the matching snippet from Section 7, and watch just that note go wide.
๐Ÿ’ก Hint โ€” a complete starter snippet file
/* my-tweaks.css */

/* 1) Soften the "note" callout to purple */
.callout[data-callout="note"] {
    --callout-color: 130, 90, 220;
}

/* 2) Optional: wider tables */
.markdown-rendered table {
    width: 100%;
}

Save this as my-tweaks.css in your snippets folder, reload, and toggle it on. Remove either block you don't want.

๐Ÿ”ง Snippet not doing anything?

Check three things: (1) the file ends in .css and is directly inside .obsidian/snippets/; (2) you clicked the reload icon after creating it, so Obsidian noticed the new file; and (3) the toggle next to it is on. If it's on and still nothing changes, the selector may differ in your Obsidian version โ€” try the callout example, which is the most stable.

โœ… Project Completion Checklist

  • You set a color scheme, turned on Readable line length, and chose a font size
  • You installed and applied a community theme you like
  • You created a .css file in .obsidian/snippets/
  • You reloaded and toggled the snippet on and saw a visible change
  • (Bonus) You styled a single note with cssclasses

Best Practices for Appearance

โœ… Do's

  • Comfort first. Readable line length + a good font size beat any theme for daily reading.
  • Prefer Style Settings over CSS for anything it can do โ€” it survives updates and needs no code.
  • Keep snippets small and named. One purpose per file, a clear filename, easy to toggle off.

โŒ Don'ts

  • Don't chase screenshot-perfect vaults. That's tinkering as a hobby, not note-taking.
  • Don't paste huge CSS blobs you don't understand. They break silently on updates and are hard to debug.
  • Don't let styling become procrastination. Fifteen minutes, then get back to writing.

๐Ÿ““ Learning Journal

Keep your learning journal inside your vault. After each lesson, take a few minutes to write down:

  • Key concepts you learned
  • Techniques that clicked for you
  • Questions or confusion points to revisit
  • Ideas you want to try
  • Your progress and feelings about learning this

โœ๏ธ This lesson's prompt: Which theme did you choose, and what about it makes the vault feel more like yours? Did writing that first snippet feel intimidating or empowering โ€” and which rung of the customization ladder do you think you'll actually live on?

๐Ÿ“ Lesson Summary

๐ŸŽ“ Key Takeaways

  • Appearance settings (color scheme, font, size, readable line length, translucency) deliver most of the comfort with zero risk.
  • Community themes install in one click from Settings โ†’ Appearance โ†’ Themes โ†’ Manage and never touch your notes.
  • The Style Settings plugin customizes theme colors, spacing, and more without code โ€” and survives updates.
  • CSS snippets in .obsidian/snippets/ are optional, small, and precise; cssclasses scopes styling to a single note.

๐ŸŽ‰ What You've Accomplished

Your vault now looks and feels like yours โ€” the right colors, a comfortable font, a theme you chose on purpose, and (if you took the last step) your very first working CSS snippet. You also learned the most important lesson about customization: climb only as high up the ladder as you need, and let the notes stay the star.

โ“ Common Questions at This Stage

Will a theme or snippet ever mess up my notes?

No. Themes and snippets are pure styling stored in the hidden .obsidian folder โ€” they change how notes look, never their content. Your Markdown files are safe, and disabling a theme or snippet reverses everything instantly. Experiment with total confidence.

Do I have to learn CSS to make Obsidian look good?

Not at all. Between Appearance settings, a good theme, and the Style Settings plugin, you can achieve a highly personal, polished look without writing a single line of code. CSS snippets are there for the rare specific tweak nothing else covers โ€” genuinely optional.

My snippet stopped working after an Obsidian update. Why?

Obsidian's internal CSS class names can change between versions, so a hand-written selector may need a small update. This is exactly why Style Settings is preferable where it applies โ€” theme authors maintain those options. For your own snippets, keep them short so any fix is quick.

๐Ÿ”ญ Looking Ahead

Next we chase pure speed: the Command palette, Quick switcher, and Hotkeys. A little keyboard fluency turns Obsidian from a nice app into a fast one โ€” you'll fly around your vault without ever reaching for the mouse.

โœ… Before the Next Lesson

  • Settle on a theme and Appearance setup you're happy with
  • Have at least one snippet toggled on (even a tiny one)
  • Write your Learning Journal entry for this lesson

๐Ÿ“š Additional Resources

๐ŸŒŸ Encouragement for the Journey

You just crossed a line a lot of people never reach: you shaped your tool instead of accepting its defaults, and you touched a bit of CSS without it biting you. That confidence carries forward. A vault you love opening is a vault you'll fill with good thinking. Now let's make it fast. ๐Ÿ”ฎ