Hearth

by ondreu
5
4
3
2
1
New Plugin

Description

A beautiful, customizable home screen — search, dashboard, and launcher in one. - This plugin has not been manually reviewed by Obsidian staff.

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

Hearth

assets/banner.png

A beautiful, customizable home screen for Obsidian — search, dashboard, and launcher in one. Hearth gives your vault a welcoming front page: a big search field, quick file-type filters, a new-note button, and a grid of cards that embed notes, images, bases, bookmarks and quick text.

Status: v0.9 — the top section and a fully arrangeable card dashboard (drag, resize, collision-aware packing, on-board card management, templates, per-card colors, web embeds, live auto-refreshing, zoomable and editable embeds, Excalidraw and canvas cards, multiple switchable dashboards with per-board overrides, pinned cards, a search-only mobile mode, layout import/export) are in. See Roadmap for what's next.

Screenshots

Dashboard

Simple

Empty

Switch

Features

Top section

  • Customizable title / logo — set any title text and an emoji/short logo.
  • Vault search — fuzzy search across your whole vault (the .obsidian config folder is ignored automatically). Keyboard friendly: / to move, Enter to open, Esc to dismiss.
  • Auto-detected filters — file-type filter chips are generated from what actually lives in your vault, grouped sensibly (Notes, Images, Videos, Sheets, Slides, Documents, Folders, Canvas, Bases…), each with a fitting icon. Hide any you don't want in settings.
  • New note button — creates a note in your configured default location.
  • Optional background — solid color, a vault image, or an image URL, with opacity and blur controls.

Dashboard cards

  • Embed — embed a note (.md), image, canvas, or .base file. Rendered through Obsidian's own renderer, so anything Obsidian (or the Bases plugin) can embed, a card can show. Each embed has a zoom control to scale its content up or down to fit the card, and Markdown notes can be made editable in place — edits save straight back to the vault.
  • Excalidraw & canvas cards — dedicated templates for embedding an Excalidraw drawing or a .canvas file, with a friendly prompt when the required plugin isn't enabled.
  • Daily note — always shows today's daily note (resolved from the core Daily notes plugin's date format and folder), with a one-click prompt to create it when it doesn't exist yet. Optionally editable in place.
  • Web page — embed any http(s) URL in a sandboxed iframe.
  • Live content — embed and web cards can auto-refresh on an interval, so a card tracking a frequently-edited note or a live page stays up to date.
  • Bookmarks — pulls from Obsidian's core Bookmarks plugin.
  • Favorites — a grid of curated note cards.
  • Recent files — your recently opened files (configurable count).
  • Links / launchpad — a grid of tiles opening notes, URLs or commands.
  • Commands — tiles that run any command-palette command, with an adjustable button size.
  • Clock & greeting — a live time-of-day greeting, clock and date.
  • Text / jot-down — a quick scratch field saved with the card, rendered as Markdown (double-click to edit).

Multiple dashboards

  • Switcher — a [1] [2] [+] row in the top-left switches between boards and adds new ones. Give a board an emoji/icon to label its button instead of a number. Right-click a button for dashboard settings (name, icon, overrides) or to delete it.
  • Per-dashboard overrides — each board can override the global grid columns, row height and background, or fall back to the defaults.
  • Pinned cards — pin any card to show it on every dashboard, sharing one definition and position across boards.
  • Keyboard shortcuts — commands to jump to a dashboard by position (Switch to dashboard 1…9) and to move to the next/previous dashboard. Bind them under Settings → Hotkeys (e.g. Ctrl/Cmd+1).

Arranging the dashboard

  • Drag & resize — hit Arrange to move cards (drag anywhere) and resize them (corner handle); everything snaps to the grid and is saved. Cards push each other out of the way as you drag and compact upward when you let go.
  • On-board management — in arrange mode each card header is editable: rename inline, swap the embedded file via a fuzzy picker, or remove the card. Add card (toolbar) drops in a new card from the library.
  • Per-card colors — give any card an accent and a background tint.
  • Granular sizing — numeric width/height per card, plus a configurable row height so cards can be sized finely.
  • Import / export — back up or share the active board's layout as JSON.
  • The dashboard can either scroll or be locked to a single page.

Mobile

  • Mobile mode — an optional search-only launcher: on phones and tablets the dashboard collapses to just the search field (desktop is unaffected).

Usage

  • Hearth opens automatically on startup and replaces empty new tabs (both toggleable in settings).
  • Open it any time from the ribbon home icon or the command “Open home dashboard”.
  • Configure everything under Settings → Hearth.

Development

npm install      # install dependencies
npm run dev      # watch build -> main.js
npm run build    # typecheck + production build

To test in a vault, symlink or copy main.js, manifest.json and styles.css into <vault>/.obsidian/plugins/hearth/.

Roadmap

  • Drag & resize cards on a free-form grid (custom lightweight engine)
  • More card types (recent, links/launchpad, commands, clock)
  • Per-card backgrounds and accent colors
  • Card library / templates
  • Best-effort Bases (.base) embedding (depends on the core Bases plugin)
  • Manage embeds from the dashboard — add, remove, swap embedded files and rename cards directly on the board, fully driven by the user
  • Filter click expands a match menu — clicking a search filter drops down the matching items immediately
  • Excalidraw filter — dedicated file-type filter for Excalidraw drawings
  • "Other" filter — catch-all for every file not matched by any other filter
  • Collision-aware auto-packing while dragging
  • Inline web/iframe embeds
  • Import/export dashboard layouts
  • Configure cards on the board — every per-card setting (type, title, content, colors and size) is edited from the card itself in arrange mode, not in the settings tab
  • More granular card sizing — numeric width & height inputs per card
  • Customizable clock — 24-hour time, seconds, greeting toggle/override and date display mode
  • .usheet (Univer Sheet) support — recognized as spreadsheets in the file-type filters
  • Compact spacing — toggle to tighten card padding and the top margin
  • Bookmark favicons — show site favicons next to URL bookmarks
  • Real app icon — used for the ribbon, tab and header logo (shipped in the bundle)
  • Commands card — tiles that run chosen command-palette commands
  • Mobile search — results float as an overlay so they no longer push the dashboard off-screen on phones
  • Live cards — per-card auto-refresh interval for embed and web cards
  • Embed zoom — per-card scale control for embedded content
  • Editable .md embeds — a per-card toggle to edit an embedded note in place; edits save straight back to the vault
  • Excalidraw drawing card — dedicated card template for embedding an Excalidraw drawing, with a prompt to install the plugin when it's missing
  • Canvas card — dedicated card template for embedding a .canvas file, with a prompt to enable the core Canvas plugin when it's off
  • Multiple dashboards — several switchable boards, managed from the [1] [2] [+] switcher in the top-left (right-click a button for settings or delete)
  • Per-dashboard overrides — columns, row height and background can be set per board, falling back to the global defaults
  • Per-dashboard icon — an emoji/short text on the switcher button instead of a number
  • Pinned cards — show a card on every dashboard, shared across boards
  • Dashboard keyboard shortcuts — switch to a board by position, or next/previous (bindable in Settings → Hotkeys)
  • Mobile mode — an option to collapse to just the search field on phones and tablets, leaving the dashboard for desktop
  • Granular row height — a Row height setting for finer control over how tall cards can be
  • Command tile size — adjustable button size on the commands card
  • Daily note card — always embeds today's daily note, with a prompt to create it when missing

Planned

Bigger ideas

  • Reorder dashboards in the switcher (drag the buttons)
  • Per-board fit-to-page / max-width overrides

License

MIT © ondreu