ppeetteerrs / obsidian-zola

A no-brainer solution to turning your Obsidian PKM into a Zola site.
http://peteryuen.netlify.app/
MIT License
684 stars 138 forks source link
obsidian obsidian-pkm pkm ssg ssg-zola zola

obsidian-zola

A free (but better?) alternative to Obsidian Publish.

This repo contains an easy-to-use (read: simplistic) solution for converting an Obsidian Personal Knowledge Management System (read: bunch of random Markdowns) into a Zola site.

Credits: This repo was forked from Adidoks.

Special Thanks: Wikilink parsing is powered by obsidian-export.

Announcements

v1.3.0 Satisfying Feature Requests! ✨

Bug Fixes:

Improvements:

Setup

Step 1: Setup Netlify

Step 2: Edit netlify.toml

Step 3: You're Done 🎉!

Step 4: Issues & Feature Requests

Step 5: (Optional Enhancement) Auto Sitemap Submit

To make your site more friendly to search engines, you can add a netlify plugin to automatically submit the new sitemap everytime you re-deploy the site. Just add the following to your netlify.toml. Remember to replace baseUrl with your SITE_URL.

[[plugins]]
package = "netlify-plugin-submit-sitemap"

[plugins.inputs]

# The base url of your site (optional, default = main URL set in Netlify)
baseUrl = "https://peteryuen.netlify.app/"

# Path to the sitemap URL (optional, default = /sitemap.xml)
sitemapPath = "/sitemap.xml"

# Time in seconds to not submit the sitemap after successful submission
ignorePeriod = 0

# Enabled providers to submit sitemap to (optional, default = 'google', 'bing', 'yandex'). Possible providers are currently only 'google', 'bing', 'yandex'.
providers = [
  "google",
  "bing",
  "yandex",
]

Example Site

Do not copy netlify.toml from example site, it is unstable. Please reference from netlify.example.toml.

The example site shows the capabilities of obsidian-zola. Note that the example site uses the dev branch of obsidian-zola. If you see features that are available in the example site but are not available in the main branch yet, consider trying out the dev (unstable) branch. Exact method can be referenced from the example repo's netlify.toml.

Local Testing (Ubuntu) [thanks @trwbox]

Features

Disclaimer

This tool is made for people who use Obsidian as a simple and efficient note-taking app (or PKM). If you configured your Obsidian with plenty of fancy shortcodes, plugins and Obsidian-specific syntax, this tool would not (and does not intend) to support those features.

Supported

Unsupported

Gotchas

  1. Do not have files with name index.md or _index.md
  2. Do not have files that have the same name as its subfolder (e.g. having both .../category1.md and .../category1/xxx.md is not allowed) (Fixed)
  3. LANDING_PAGE needs to be set to the slugified file name if SLUGIFY is turned on (e.g. to use I am Home.md, LANDING_PAGE needs to be i-am-home)

WIPs / Ideas