GithubHelp home page GithubHelp logo

jackyzha0 / quartz Goto Github PK

View Code? Open in Web Editor NEW
4.9K 31.0 2.3K 6.63 MB

🌱 a fast, batteries-included static-site generator that transforms Markdown content into fully functional websites

Home Page: https://quartz.jzhao.xyz

License: MIT License

JavaScript 6.21% SCSS 9.07% TypeScript 84.65% Dockerfile 0.07%
digital-garden obsidian-md obsidian networked-thought static-site-generator quartz-ssg

quartz's Introduction

Quartz v4

“[One] who works with the door open gets all kinds of interruptions, but [they] also occasionally gets clues as to what the world is and what might be important.” — Richard Hamming

Quartz is a set of tools that helps you publish your digital garden and notes as a website for free. Quartz v4 features a from-the-ground rewrite focusing on end-user extensibility and ease-of-use.

🔗 Read the documentation and get started: https://quartz.jzhao.xyz/

Join the Discord Community

Sponsors

quartz's People

Contributors

8bitgentleman avatar aarnphm avatar adambrangenberg avatar aidenybai avatar apoorvkh avatar benschlegel avatar bur3ku avatar chaosarium avatar claudio4 avatar dependabot[bot] avatar dhammacharts avatar eikowagenknecht avatar geekodour avatar geoffreygarrett avatar jackyzha0 avatar jawadn00r avatar juaoose avatar kabirgh avatar kon-foo avatar lisandra-dev avatar lucastucious avatar makondratev avatar matsfangohr avatar meleu avatar ofalvai avatar saberzero1 avatar smilorent avatar sspaeti avatar tomoyanonymous avatar tuta-amb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quartz's Issues

Links in search bar do not link to the page

Hi there!

Recently started using Quartz and I realised that my full text search is not working as it should be.

Currently my website lives at https://ivanleomk.github.io/quartz/ and is hosted by github pages.

When I try to do a search for any content, eg. I search for the term Latent Space. This pulls up the search bar as seen below

Screenshot 2021-12-15 at 2 21 48 PM

which when I click on the first entry, links me to https://ivanleomk.github.io/notes/Latent-Space#:~:text=as.

This however, throws an error because the actual address of the note is at https://ivanleomk.github.io/quartz/notes/Latent-Space#:~:text=as

Is here a way I can modify the full text search to automatically generate the right link?

Generate incorrect backlink URLs for GitHub subdomain user

Thank you for sharing this! I enjoy it a lot, only one issue of backlink URLs came with me.

I am using the GitHub subdomain, so the backlink URLs should be https://<user name>.github.io/quartz/<note>, but https://<user name>.github.io/<note> is generated, missing /quartz/ part. I believe this issue is caused by layouts/partials/backlinks.html because URLs in other partials are all correct.

To reproduce this issue, I forked this repository and left everything unchanged, except the baseURL in config.toml and the cname in .github/workflows/deploy.yaml. Here are the page and repository links:

https://qilong-kirov-liu.github.io/quartz/
Qilong-Kirov-LIU/quartz

Would you be so kind to follow up on this? Thanks indeed!

Non-root Image Rendering Broken

Describe the bug
If an image does not have / as the prefix for the path, Hugo refuses to render the image

To Reproduce
Steps to reproduce the behavior:

  1. Insert an image into markdown for a note, do not root prefix
  2. Run make to build page
  3. Image does not appear

Expected behavior
Images appear properly, even without root prefix

Screenshots
If applicable, add screenshots to help explain your problem.

image

Whitelisting pages

It would be useful to be able to whitelist pages. In other words, choose which pages get published, rather than having to exclude them.

Blacklisting pages

As the opposite of #1, It would be helpful to blacklist notes such that they aren't published.
Would be useful to do this by tag or by folder, such as any notes tagged with #journal would not be published.

Links to domain .md could not be recognized correctly

  • I tried to add a markdown link [Obsidian](https://obsidian.md) on the website using quartz. However, when click the link on the website, it forward the address to https://obsidian/, an address without .md.
  • I think maybe quartz recognize the domian .md as a markdown file, thus forward it to a wrong address.
  • I also changed the https://obsidian.mdto https://www.obsidian.md, but it's the same result without .md
  • I tried this on chrome browser both on android and macOS.
    Please check it out,

Regards.

Search style issues

Hello!

Looks like there is a similar issue with the search container, where it has a horizontal scrollbar at the bottom, I was not able to solve it initially without breaking other stuff 😁

image

Also, whenever there are no result for the search, the result item is larger than the search bar.

image

Thanks again for quartz 😄

indices/linkIndex.json not found when testing on windows

Describe the bug
After commit 651bfc5, indices/linkIndex.json is not automatically generated on windows machine, which causes partials / head.html to throw errors at line 33:

    {{$linkIndex := resources.Get "indices/linkIndex.json" | resources.Fingerprint "md5" | resources.Minify |  }}

On github it is done by github workflow, and is working.

To Reproduce
Steps to reproduce the behavior:

  1. git clone https://github.com/jackyzha0/quartz
  2. cd quartz && hugo server --disableFastRender
  3. error

Desktop (please complete the following information):

  • Browser: Windows10 MS Edge

Additional context

D:\q2\quartz (hugo -> origin)
λ hugo server --disableFastRender
Start building sites …
hugo v0.93.2-643B5AE9+extended windows/amd64 BuildDate=2022-03-04T12:21:49Z VendorInfo=gohugoio
ERROR 2022/03/07 22:35:13 render of "home" failed: execute of template failed: template: index.html:3:3: executing "index.html" at <partial "head.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\head.html:24:70": execute of template failed: template: partials/head.html:24:70: executing "partials/head.html" at <resources.Fingerprint>: error calling Fingerprint: <nil> can not be transformed
ERROR 2022/03/07 22:35:13 render of "page" failed: execute of template failed: template: _default/single.html:3:3: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\head.html:24:70": execute of template failed: template: partials/head.html:24:70: executing "partials/head.html" at <resources.Fingerprint>: error calling Fingerprint: <nil> can not be transformed
ERROR 2022/03/07 22:35:13 render of "page" failed: execute of template failed: template: _default/single.html:3:3: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\head.html:24:70": execute of template failed: template: partials/head.html:24:70: executing "partials/head.html" at <resources.Fingerprint>: error calling Fingerprint: <nil> can not be transformed
ERROR 2022/03/07 22:35:13 render of "page" failed: execute of template failed: template: _default/single.html:3:3: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\head.html:24:70": execute of template failed: template: partials/head.html:24:70: executing "partials/head.html" at <resources.Fingerprint>: error calling Fingerprint: <nil> can not be transformed
Error: Error building site: failed to render pages: render of "page" failed: execute of template failed: template: _default/single.html:3:3: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\head.html:24:70": execute of template failed: template: partials/head.html:24:70: executing "partials/head.html" at <resources.Fingerprint>: error calling Fingerprint: <nil> can not be transformed
Built in 238 ms

Link previews do not work when relativeURLs is toggled

Describe the bug
When relativeURLs is true in config.toml, link previews do not appear

To Reproduce
Steps to reproduce the behavior:

  1. Set relativeURLs to true in config.toml
  2. Run Quartz locally
  3. Find a link to a note
  4. No link preview

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
No link preview:
image

Expected:
image

iframe not rendering

Describe the bug
Pasting a standard snippet of <iframe> in HTML format does not render anything on screen.

To Reproduce
In any markdown file, paste any iframe code.

Example :

<iframe id="inlineFrameExample"
    title="Inline Frame Example"
    width="300"
    height="200"
    src="https://www.openstreetmap.org/export/embed.html?bbox=-0.004017949104309083%2C51.47612752641776%2C0.00030577182769775396%2C51.478569861898606&layer=mapnik">
</iframe>

Expected behavior
The iframe should render the intended elements. Double confirmed that same link works in Obsidian.

Screenshots
Obsidian :
image

Quartz:
image

Desktop (please complete the following information):

  • Device: Macbook Pro M1
  • OS: MacOS Monterey
  • Browser : Tried on Chrome and Edge

[[Links]] without Pages showing up as 'Untitled' on the graph

Describe the bug

  • This bug occurs when a [[link]] is created with absolute paths turned on, to a un-created page.
  • In obsidian, this shows as a red dot on the graph, and allows you to create the page at a future point by double clicking.
  • In quartz, the graph shows these links as "Untitled" pages that when clicked on, lead to 404 error pages.

To Reproduce
Steps to reproduce the behavior:

  1. Create a new page called "Test"
  2. In "Test", write a sentence in markdown. For example " Hi, at a later point I would like to learn more about [[artifical-intelligence]] "
  3. Notice that in obsidian graph, a red dot is created called "artificial-intelligence" but no page has been attached to it yet. Do not double click on it, as it will create the page for you. Leave as is.
  4. Push to github and publish
  5. Notice that "Test" appears on the graph, linked to a node called "Untitled"
  6. Click on "Untitled" and it should lead to a 404 page.

Expected behavior

Option A: "Untitled" should appear in a different colour and show the name "Artificial-Intelligence"

Option B: "Untitled" and corresponding dot/node should not show up on the graph at all

Screenshots
Quartz website graph:
image
image

Same graph in obsidian:
image

Desktop (please complete the following information):

  • Device: Surface Laptop Go
  • OS: Windows 11
  • Browser : Edge

Additional context
Context: I have a note taking style where I tag important keywords that I would like to get to later using [[keywordname ]] . Once enough mentions of [[keywordname]] turn up in my notes, obsidians graph shows multiple connections going into [[keywordname]] but the colour is greyed out implying that I haven't created a note on it yet. When I have time, I then double click on [[keywordname]] and it makes a page called "Keywordname" linked to it, where I summarize information about that keyword.

I use this instead of # tags since i can write my summary within that name itself, and I can leave many of these [[]] unlinked to pages incase it isn't important that I get to them, and they occupy a spot lower in the hierarchy in the obsidian graph depending on how often i've mentioned them.

Adding support to mermaid

Obsidian allows you to use mermaid to generate graphs but in quartz those are rendered as code blocks as the feature is not included.

It would be great to add the mermaid block parsing to the pipeline

Thank you for your great work

Hugo-Obsidian File Indexing For Windows

Windows "/" is messing with how files are structed on the site index. This is leading to the interactive graph being dysfunctional. Such as the loss of the "red dot" on which page the user is currently on as well as the connections not being accurate.

Attachment(.txt) 1. hugo-obsidian out put for "hugo-obsidian -input=content -output=data -index=true" on cloned site https://quartz.jzhao.xyz/
Image 2. Working graph on https://quartz.jzhao.xyz/
Image 3. Non-working graph with "hugo server"

Hugo-Obsidian output.txt
quartz jzhao xyz graph
local 'server hugo' graph

File comparisons (converted to TXT for YAML)

linkIndex(Windows).txt
linkIndex(Linux).txt

contentIndex(Windows).txt
contentIndex(Linux).txt

some links broken/duplicated in graph view

Describe the bug
A few (but not all) of the nodes in the graph that should exist appear as "Untitled", and clicking them takes me to an invalid page. A note with the same name but not all the same connections on the graph provides the correct link.

In my case, I have a note called "Field extensions", which is a large node because it has many connections. But when I hover on where I expect that node to be (where it is on Obsidian, for example), it is "Untitled", and clicking on it takes me to "/quartz/Field-extensions", which doesn't exist. Another node on the graph with not the same connections is called "Field extensions", and clicking on it takes me to the correct page "/quartz//../Field-extensions". Searching for "Field extensions" on the site and clicking on the suggestion also takes me to that correct page.

To Reproduce
I'm not sure how to reproduce this behavior.

Expected behavior
I expect the "Untitled" node to be named "Field extensions" and take me to the right page, perhaps consolidating connections with the lesser copy that is labeled "Field extensions" in the graph I described above.

Desktop (please complete the following information):
This is behavior I noticed on my deployed GitHub pages site, so I don't think I need to include my local computer information.

  • Browser: Chrome

Additional context

  • When I click on the "Field extension" node in graph view on Obsidian, it briefly takes by to a page called "No file" before quickly redirecting me to the correct file.
  • I have verified that the front matter is there and properly implemented.
  • I had an Obsidian Vault before using Quartz, and tried to integrate my existing notes with Quartz
  • I needed to update my link preferences, as per the setup guide, to be absolute. I don't know if somehow the links haven't been updated.
  • I don't believe this is an issue with folder depth of the note, as other notes in the same directory as "Field extension" are properly shown on the graph on Quartz
  • Perhaps this has to do with renaming files?

Ability to specify permalinks (URLs of the notes)

Problem

When I change the title of a note, the link changes. This makes any URL links to them from outside the garden break.

Proposed solution

Optional permalink: .... field in YAML front-matter, that means the note URL stays the same, despite the title or original filename changing.

Why this matters

I feel wary of linking to my digital garden from anywhere. The links can easily break. Not conducive to a healthy garden!

Workarounds

I could just rename the file to be what I want. This doesn’t work for two reasons.

Firstly, I use Quartz with my Obsidian, like many people do. I don’t want to compromise my Obsidian filenames for this reason. The URLs I want to be quite short and compact.

Second, I might easily consider renaming the files in Obsidian, as this is a first-class move there, and end up breaking all links on the web to the garden. Having a dedicated “permalink” field that makes clear it should not change and is separate from other concerns seems like the best solution.

Consultation about a feature of preserving space in a file name

This is purely a consultation.

  • About the name of each markdown file, is there any way that I could preserve the space between words in the file name since it may look more neat?
  • I used to name a file with a long sentence containing main content of each note, though replacing each space with -could be automated using macro, I still wonder if it is possible to have another way to preserve the space .
  • If it's not applicable now, would you consider developing it as a feature in the future? Or it simply couldn't get along with Hugo?

Regards.

Live preview Hugo server does not start

When I try to start Hugo server in the same repo file, this is the output

Start building sites … 
hugo v0.92.1+extended linux/amd64 BuildDate=unknown
ERROR 2022/02/17 11:47:17 Failed to get JSON resource "/static/linkIndex.json": open /home/mo/ob_garden/quartz/static/linkIndex.json: no such file or directory
If you feel that this should not be logged as an ERROR, you can ignore it by adding this to your site config:
ignoreErrors = ["error-remote-getjson"]
Error: Error building site: failed to render pages: render of "home" failed: execute of template failed: template: index.html:24:6: executing "index.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/home/mo/ob_garden/quartz/layouts/partials/backlinks.html:7:18": execute of template failed: template: partials/backlinks.html:7:18: executing "partials/backlinks.html" at <index $linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
Built in 83 ms

░▒▓    ~/ob_garden/quartz    hugo ?1                         

is there any other way to have live preview, also wiki does not mention it

[Bug] Backlinks Gone Due to /Site Prefix

The backlinks section only shows No backlinks found on every page. Seems to not pick up the /Site when trying to list the backlinks so it thinks there aren't any.

build link Index error

Describe the bug
after adding a folder I got this in build link index
also I have made all links to mdlinks

Expected behavior
The web page will be build and deployed
Screenshots
image

Desktop (please complete the following information):

  • Windows
  • Windows 11
  • Microsoft Edge

Additional context
Add any other context about the problem here.

Changing Font Size and Type

How to change the font size of the text on the screen its too small. How could I change the font to Helvetica Neue.

Thanks.

建议 content 单独分支

建议 content 单独分支,hugo 分支用 submodule 引用,可以配合 Obsidian Git 来直接推到 content 分支,而且本地不需要再套一层 hugo

Search shows private content

Hello Jacky!

I just updated the repo to see the latest changes and noticed that a summary of private notes is shown in the search component. This only happens if you use the ignoreFiles and not the more recent draft.

image

Graph view and dark mode could not be rendered on android

Quarz is really amazing with Obsidian, really appreciate that you share it with others.
How ever I found that the graph view and dark mode could not be rendered on android as title showed, I'm not sure if others also come across this.
It'll be great if you can show me how to solve this issue.
Best regards.

Graph: Link text instead of id

I tried to change it myself in graph.html partial, but it doesn't work:

// draw labels
const labels = graphNode.append("text")
	  .attr("dx", 12)
	  .attr("dy", ".35em")
	  .text((d) => d.text) // was previously d.id
	  .style("opacity", 0)
	  .style("pointer-events", "none")
	  .call(drag(simulation));

As soon as I visit links, the vertices have no labels at all.

Can view backlinks & graph locally but not online

UPDATE: Just fixed this! Hehe.

Hi! Thank you for making Quartz :) I'm really enjoying it so far!

I can view the backlinks offline & graph offline with the hugo server but the backlinks don't seem to reflect online. So when I click the parts of the graph online, they appear as a wrong page. I can't seem to figure out how to fix this..

Thank you! : )

Capitalization changes in filenames break the online site.

Hola Jacky!

Describe the bug
I created some pages in obsidian than where capitalized but then i changed it to lowercase. obsidian even helps you updating the links.

This broke the online site. I have checked that all pages have front matter but I find no way to update my online graph no matter how many commits I make.

The page names are the same just the first letter of each word was upper case.

To Reproduce

You could change the capitalization in any page title and see if it breaks the links and graph in the online site.

Here's my repo. https://github.com/Sp-cy/quartz
Expected behavior
If capitalization changes in files , the site should reflect and respond to it.

Screenshots
My digital garden

You can see the broken site.
Desktop (please complete the following information):

  • Device: Win 10 PC
  • OS: WIN 10 / Linux
  • Browser: Firefox.

Additional context
pages can be found in the live site with the first upper cased letter when it gives 404 in the links.

contentIndex.json not found on windows

Describe the bug
hugo will throw errors for unable to find contentTable when local testing on a windows machine, because path symbols in contentIndex.json are generated with backslashes ("\\") instead of foward slashes (/)

To Reproduce

git clone https://github.com/jackyzha0/quartz
hugo-obsidian -input=content -output=assets/indices -index -root=.
cd quartz && hugo server --disableFastRender

Expected behavior
hugo runs

Additional context
windows generated contentIndex.json example:

{ ....
  "\\vrc\\words\\avatar-pedestal": {
    "title": "Test Page",
    "content": "todo\r\n",
    "lastmodified": "2022-03-10T00:15:26.2730339-05:00",
    "tags": null
  }
}

hugo error:

...
Error: Error building site: failed to render pages: render of "page" failed: execute of template failed: template: _default/single.html:34:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "D:\q2\quartz\layouts\partials\backlinks.html:13:38": execute of template failed: template: partials/backlinks.html:13:38: executing "partials/backlinks.html" at <index (index $contentTable .) "title">: error calling index: index of untyped nil
Built in 221 ms

related issue: #64

YAML title in graph not recognized for some random pages

Describe the bug
Most pages have the same page title in the graph hover over as well

Some random pages don't, they show "Untitled Page" in the graph. I am not sure why.

To Reproduce
Steps to reproduce the behavior:

  1. Go to this sample from my repo
  2. See the title
  3. Scroll down to the graph
  4. Hover over the node
  5. The title on the graph says 'Untitled Page'

Expected behavior
The title on the graph should say 'Program Operations'

Screenshots
image

Desktop (please complete the following information):

  • Device: Microsoft Surface laptop go
  • OS: windows 11
  • Browser Edge
    Additional context
    This began happening once I downloaded the latest commits from the new update to quartz

Disable Graph and add Navigation

How can I disable the Graph?

How can I customize quartz so that I don't have any Backlinks at the bottom, instead I would like a Navigation just like in Obsidian and Obsidian publish on the left and on the right a Table of contents of the current page?
image

🌱 "Version Control" for Notes

Context

One of the core problems of the internet in its current state is that it's difficult to properly track the evolution of a line of thought, over time. This makes it impossible to e.g. have a true permalink to a sentence / paragraph on a post, since the entropy of the internet inherently results in link rot and updates to the post & line of thinking.

There are ad-hoc solutions that have been layered on such as the wayback machine, but that unfortunately cannot be relied upon as a scalable long-term solution to this problem.

What if we could bake this functionality directly into our blogs / brains / gardens?

Solution

I am proposing a versioning system for notes in Quartz that utilizes the hugo-obsidian scraping engine to set up subdirectories for holding versions of each note.

Here's an example workflow:

  1. Publish note1.md into Quartz and host it on /blog/note1/ — as far as the folder structure is concerned, this serves up the content from /blog/note1/v1/
  2. We make an update to note1.md and compile / publish, creating /blog/note1/v2/ — we can make /blog/note1/ automatically point to the latest version
  3. Continue to make changes to a note and evolve the versioning over time, with the ability to open & search through previous versions

Open Questions

  • How should we handle search / backlinks / graph viewer?
    • I imagine we want to index only the latest in this, for the sake of keeping this functionality useful still and not bloated.
  • Once we do have this notion of versioning, what's the best way to link directly to text within it?
    • Chrome currently supports the ability to highlight text on a webpage, but there may be a more scalable solution that's baked into the framework itself, rather than relying on the browser.

Additional Context

  • According to @jackyzha0 it's impossible to do this with pure hugo at the moment
  • This would likely be an opt-in feature when using the hugo-obsidian scraping engine

I'm happy to hear any thoughts on this idea, as well as other solutions to solve this issue and add this functionality! ⚡️

custom.css does not work as expected.

Describe the bug
custom.css does not work.

To Reproduce
custom.css

.singlePage {
  margin: 4em 19vw;
}

Expected behavior

I want to change single page's width from 30vw to 19vw.
Screenshots
image

RTL support

Quartz is an awesome project for digital gardening, I was enjoying my testing until I found the lack of RTL support
(Arabic is written from right to left)

quartz built on Hugo which support this multilanguage and RTL , adding multilanguage and RTL support for this theme would be a huge plus for the project
if this will take a lot of time add other language (RTL) support would be good and my solution would be to make two different websites

as far as I know, there is no good solution for making digital garden that support RTL
other option is to use Jekyll Arabic fork and make a script that add missing fetuars
I have tried to change language sittings on config.toml and nothing is happened you can take a look at my fork
https://mosaleh52.github.io/quartz/
https://github.com/mosaleh52/quartz/blob/hugo/config.toml

Github Pages - Partials - Search (Function)

The search function currently does not work when using github pages to publish.
The problem is that the main page already has a subdomain.
For example my domain is "https://quartztester.github.io/quartz/".

When I do a search for the term "commit" I get the end URL of "https://quartztester.github.io/notes/hosting#:~:text=commit"

However the URL should be "https://quartztester.github.io /quartz /notes/hosting/#:~:text=commit"

This issue does not seem to effect registered domains where the domain would just be "https://domain.com/"

Search Term
image

Nonworking URL which appears after clicking
image

URL which should appear (with the site below)
image

Files with spaces are not linked properly.

When using absolute paths in obsidian, paths are generated with %20 in the place of spaces in filenames. Everything technically translates to the master branch correctly, however the html links use %20 as though they were part of the file name exactly and then the browser interprets them as actual spaces. This invalidates the links and breaks the entire linking structure.

Example:
Filename: Hello There.md
Link String: Hello%20There.md
HTML Link: quartz/Hello%20There
Browser Interprets: quartz/Hello There
Hugo Filename: Hello%20There

I tried fixing this myself, however I do not understand Go well enough to figure out a complete solution.

Links not adding the repository name

Describe the bug
When I open a link, it's note modifying the first repository name automatically, it worked on my other account but not on a new one I created today. I forked, accepted to add the actions and then publish the pages on master /root.

Exemple: I enter in a link in _index of domain.github.io/repository/ and it open domain.github.io/nameOfLink without adding /repository/ in the middle which lead to a 404 error... When I type manually the url it's working.

Integrating tags

This would be somewhat of a larger undertaking I'm guessing.

It'd be cool if Quartz could handle Obsidian tags. Personally I use #tag syntax in Obsidian so I'm guessing you'd have to convert those tags to be part of each post's frontmatter. Then adding a component (like a sidebar) to the html in order to display all the tags plus attaching the tags to each post.

I've been trying to do something similar but with Eleventy but I've ran into a wall. I'm not too familiar with Hugo but I'll give it a shot. Let me know if you have any thoughts or ideas!

Build errors with Hugo

Hi, I just forked this repository (to https://github.com/signal-k/quartz), cloned it locally and then installed Hugo. After running the Hugo command in my terminal, I ended up with this output:

hugo v0.88.1+extended darwin/amd64 BuildDate=unknown
WARN 2021/09/17 14:54:03 found no layout file for "HTML" for kind "taxonomy": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN 2021/09/17 14:54:03 found no layout file for "HTML" for kind "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN 2021/09/17 14:54:03 found no layout file for "HTML" for kind "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN 2021/09/17 14:54:03 found no layout file for "HTML" for kind "taxonomy": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
ERROR 2021/09/17 14:54:03 render of "page" failed: execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/Users/larbuckle/Documents/Publishing/quartz/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
ERROR 2021/09/17 14:54:03 render of "page" failed: execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/Users/larbuckle/Documents/Publishing/quartz/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
ERROR 2021/09/17 14:54:03 render of "page" failed: execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/Users/larbuckle/Documents/Publishing/quartz/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
ERROR 2021/09/17 14:54:03 render of "page" failed: execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/Users/larbuckle/Documents/Publishing/quartz/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
Error: Error building site: failed to render pages: render of "page" failed: execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/Users/larbuckle/Documents/Publishing/quartz/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
Total in 76 ms

I then tried uploading it to Vercel, it again failed to build. Here's the information from the log:

14:54:41.358  	Retrieving list of deployment files...
14:54:43.129  	Downloading 54 deployment files...
14:54:46.827  	Analyzing source code...
14:54:48.225  	Installing build runtime...
14:54:50.107  	Build runtime installed: 1.882s
14:54:52.550  	Looking up build cache...
14:54:52.600  	Build Cache not found
14:54:53.750  	Building sites … WARN 2021/09/17 06:54:53 found no layout file for "HTML" for "taxonomyTerm": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
14:54:53.761  	WARN 2021/09/17 06:54:53 found no layout file for "HTML" for "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
14:54:53.762  	WARN 2021/09/17 06:54:53 found no layout file for "HTML" for "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
14:54:53.763  	WARN 2021/09/17 06:54:53 found no layout file for "HTML" for "taxonomyTerm": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
14:54:53.764  	ERROR 2021/09/17 06:54:53 render of "home" failed: execute of template failed: template: index.html:13:10: executing "main" at <partial "footer.html" .>: error calling partial: "/vercel/path0/layouts/partials/footer.html:6:18": execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/vercel/path0/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
14:54:53.765  	ERROR 2021/09/17 06:54:53 render of "page" failed: "/vercel/path0/layouts/_default/single.html:6:18": execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: "/vercel/path0/layouts/partials/footer.html:6:18": execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/vercel/path0/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
14:54:53.765  	ERROR 2021/09/17 06:54:53 render of "page" failed: "/vercel/path0/layouts/_default/single.html:6:18": execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: "/vercel/path0/layouts/partials/footer.html:6:18": execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/vercel/path0/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
14:54:53.765  	ERROR 2021/09/17 06:54:53 render of "page" failed: "/vercel/path0/layouts/_default/single.html:6:18": execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: "/vercel/path0/layouts/partials/footer.html:6:18": execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/vercel/path0/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
14:54:53.765  	Total in 18 ms
14:54:53.765  	Error: Error building site: failed to render pages: render of "page" failed: "/vercel/path0/layouts/_default/single.html:6:18": execute of template failed: template: _default/single.html:24:6: executing "_default/single.html" at <partial "footer.html" .>: error calling partial: "/vercel/path0/layouts/partials/footer.html:6:18": execute of template failed: template: partials/footer.html:4:10: executing "partials/footer.html" at <partial "backlinks.html" .>: error calling partial: "/vercel/path0/layouts/partials/backlinks.html:6:18": execute of template failed: template: partials/backlinks.html:6:18: executing "partials/backlinks.html" at <index $.Site.Data.linkIndex.index.backlinks $curPage>: error calling index: index of untyped nil
14:54:53.776  	Error: Command "hugo -D --gc" exited with 255

I haven't changed anything or edited any of the files from the base repo.

Latex Support

Hello! I was wondering if there was a convenient way to add support for latex rendering in markdown files. I tried using latex inline and it appears it's not being rendered.

big boi vault too big, causing storage/file size issues?

Describe the bug
I would tell you if I knew what it was ¯_(ツ)_/¯
Specific error screenshot below

To Reproduce
Steps to reproduce the behavior:

  1. Go to my fork and try to deploy it, gets stuck on deployment stage

Expected behavior
The page to be deployed

Screenshots
https://gyazo.com/31ff91f5864cfd1256ac709b47d42495

Desktop (please complete the following information):

  • Windows 10 pc

Additional context
Just message me on discord if you have any further inquiries

Error logging when note page is missing a title.

Is your feature request related to a problem? Please describe.
Error logging / description when note page is missing a title.

Describe the solution you'd like
Show error maybe on the UI itself? or console.log

Describe alternatives you've considered
n/a

Additional context
image

Wiki-links support

Links like this [[note]] or this [[some/dir/note]]
that goes to first founded markdown file with name node.md, for example ./some/dir/note.md

May be by using GitHub Actions or some Hugo hook or plugin.
Any recomendations?

This project based on Jekyll have this feature:
https://github.com/rgvr/simply-jekyll

Docker Image for easy usage

Is your feature request related to a problem? Please describe.
Installation for new users is difficult

Describe the solution you'd like
Have a Docker image that users can use to run Quartz + Obsidian easily

Describe alternatives you've considered
Better documentation would be nice but this is better for non-technical writers

Additional context
N/A

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.