Skip to main content
Deno 2 is finally here 🎉️
Learn more

Eden

Eden Logo

Converts an Obsidian vault into a super-charged digital garden of static html.

See CurrentTasks.md for up-to-date development tasks

Quick Start

  • Install Deno from https://deno.com/
  • ./run.sh to generate and view static html from the sample/ directory

Usage

Usage Command
Simplest usage deno run mod.ts path/to/my/vault/
Generate and preview the outputted html deno run mod.ts --preview path/to/my/vault/ && start http://localhost:8000/
Run with permissions deno run --allow-net --allow-write --allow-read --allow-env mod.ts path/to/my/vault/

Features

  • Breadcrumbs
  • Metadata Support [[Metadata]]
    • Created Date (automatic)
    • Last Edited Date (automatic)
    • hidden (prevents publishing the page)
    • type
    • tags (automatically generates an index page that links to all pages with a given tag)
    • template (allows overriding html template)
    • alias (Link to a note using a metadata alias)
  • Future-proof: Exportable data, portable, control and own your data, no lock-in
  • Highly Customizable HTML and CSS [[plain]]
    • Javascript is supported and is fully optional!
  • Backlinks [[backlinks]]
  • Website icons next to external links (Like this: Youtube)
  • ️Built-in rss feed support (automatically creates /rss.xml)
  • Support for Footnotes ^[example footnote]
  • Support sizing images
  • Navigation: Support for vertical and horizontal nav depending on screen size. Collapsable sections
  • Support embeddable images [[images]]
  • Block Embedding [[embedding]]
  • Embeddable content
    • Embeddable Youtube Videos
    • Embeddable Vimeo Videos
    • Embeddable Tweets
  • Faster Execution with caching
    • Skips files if the .md is older than the .html and the template / css
  • Site search
    • make entire garden available in json at /garden.json for advanced usage
  • 🔑⛰️Backlinks should include optional context snippets
  • 🍎Metadata thumbnail for article for when it’s displayed in an index page
  • Obsidian CSS Snippets
  • 🌀Ability to create different object types, ontologies, and tags
  • 🍎Expandible/collapsible blocks
  • Embed Audio files
  • Embed pdf
  • Embed search results
  • ⛰️Support syntax highlighting
  • ❓Print-ready, capable of being exported to EPUB or PDF
  • ⛰️Customizable header (like https://maggieappleton.com/) that works with transclusion.
  • Template Footer
    • link to rss.xml
    • social links
    • copyright

Obsidian Flavored Markdown Support

Completed Syntax Feature Name Note
[[Link]] Internal links
!​[[Link]] Embedding files
![[image.png]] Embedding image
![[Link#^id]] Block references
^id Defining a block
%%Text%% Comments
~~Text~~ Strikethroughs
==Text== Highlights
``` Code blocks Todo: Syntax highlighting lib
- [ ] Incomplete task
- [x] Completed task
> [!note] Callouts Todo: styling
[[page|modified title]] Modified title source
[[page#header1]] Link to header source
[[page#^blockId]] Link to blockId source

Symbol Legend

*🍎: Low-hanging fruit (easy and fast to complete)
*⛰️: Medium Difficulty
*🌀: Complex (may take longer to implement)
*❓: Optional (unsure if this will be a final feature)
*🔑: Key feature
*⏳ : Partially Complete

Git/Vercel setup

To use Eden with Vercel and Git for Continuous Deployment, set the followin Project Settings in Vercel: Build Command: /vercel/.deno/bin/deno run --allow-net --allow-write --allow-read --allow-env https://www.edenmarkdown.com/code/latest/src/mod.ts --parseDir . Output Directory: eden-md-out/YOUR_PROJECT_NAME (note: YOUR_PROJECT_NAME is found in eden-md-config in your markdown vault directory) Install Command: curl -fsSL https://deno.land/x/install/install.sh | sh

Note: deno.land/x/eden isn’t working right now https://github.com/denoland/wanted_modules/issues/87 so I’m self hosting the source for now at edenmarkdown.com/code/VERSION/src/mod.ts

Support this Project

I’ve created Eden on my own time and out of my own pocket. If you benefit from it please consider a one-time donation!

https://github.com/sponsors/jdoleary