# 🌱 Forgetful Notes ![code size](https://img.shields.io/github/languages/code-size/semanticdata/forgetful-notes) ![repository size](https://img.shields.io/github/repo-size/semanticdata/forgetful-notes) ![commits](https://img.shields.io/github/commit-activity/t/semanticdata/forgetful-notes) ![last commit](https://img.shields.io/github/last-commit/semanticdata/forgetful-notes) ![is website up?](https://img.shields.io/website/https/forgetfulnotes.com.svg) This repository holds the source code for [Forgetful Notes](https://forgetfulnotes.com)β€”my digital garden of knowledge. It serves as a platform for my learning and creative endeavours. A space for thinking through, building upon, and coming back to. It is powered by [Quartz](https://github.com/jackyzha0/quartz/) and [Obsidian](https://obsidian.md). You can read the [Documentation](https://quartz.jzhao.xyz/), and join the [Discord Community](https://discord.gg/cRFFHYye7t). ## Contents
Show/Hide - [🌱 Forgetful Notes](#-forgetful-notes) - [Contents](#contents) - [Screenshots](#screenshots) - [Full Width](#full-width) - [Slim (light)](#slim-light) - [Slim (dark)](#slim-dark) - [Features](#features) - [Background](#background) - [Technology](#technology) - [Useful Commands](#useful-commands) - [Customization](#customization) - [Stylesheets](#stylesheets) - [Fonts](#fonts) - [Folder Structure](#folder-structure) - [License](#license)
## Screenshots
Show/Hide ### Full Width Website Screenshot ### Slim (light) Website Screenshot ### Slim (dark) Website Screenshot
## Features - Fast Natural-Language Search - Bidirectional Backlinks - Floating Link Previews - Admonition-style Callouts - Markdown Links and Wikilinks Support - Latex Support ## Background Forgetful Notes is created using [Quartz](https://github.com/jackyzha0/quartz), hosted on [GitHub](https://github.com/), deployed with [GitHub Pages](https://pages.github.com/), and facilitated by the GitHub [Publisher](https://github.com/ObsidianPublisher) plugin for [Obsidian](https://obsidian.md/). The website has gone through many changes. I have not been shy about moving from technology to technology as I learn new things. Coming across the world of _Static Site Generators_ was a game changer. I have ran my notes through [Jekyll](https://jekyllrb.com/), [Hugo](https://gohugo.io/), [MkDocs](https://squidfunk.github.io/mkdocs-material/), [Zola](https://www.getzola.org/), and most recently [11ty](https://11ty.dev). ## Technology All content for the site is written in _Markdown_ within [Obsidian](https://obsidian.md/)β€”an extensible, flexible note-taking app. To export the notes from Obsidian, I rely on the [GitHub Publisher](https://github.com/ObsidianPublisher) plugin. The [source code](https://github.com/semanticdata/forgetful-notes) is hosted in [GitHub](https://github.com/). From here we use [GitHub Actions](https://github.com/features/actions) to build and deploy the site to [GitHub Pages](https://pages.github.com/). ## Useful Commands ```sh # Install Dependencies npm install # Update Dependencies npm update # Start Local Server npm start # Update Quartz npm run update # Sync the Repo npm run sync # Build Only npm run build # Find Help npx quartz --help ``` ## Customization ### Stylesheets You can add custom CSS code within `/quartz/styles/custom.scss`. You will then need to uncomment line 4 of `/quartz/styles/base.scss` to have it take effect. ### Fonts | Used in: | Font Family | Previous Font | | -------- | :------------------------------------------------------: | :----------------------------------------------------------------------: | | Headers | [Bitter](https://fonts.google.com/specimen/Bitter) | [Schibsted Grotesk](https://fonts.google.com/specimen/Schibsted+Grotesk) | | Body | [Bitter](https://fonts.google.com/specimen/Bitter) | [Source Sans Pro](https://fonts.google.com/specimen/Source+Sans+3) | | Code | [Fira Mono](https://fonts.google.com/specimen/Fira+Mono) | [IBM Plex Mono](https://fonts.google.com/specimen/IBM+Plex+Mono) | ## Folder Structure
Show/Hide ```plaintext . β”œβ”€β”€ .github/ β”‚ └── workflows/ β”‚ β”œβ”€β”€ build.yml β”‚ └── deploy.yml β”œβ”€β”€ content/ β”‚ β”œβ”€β”€ notes.md β”‚ β”œβ”€β”€ pages.md β”‚ └── ... β”œβ”€β”€ docs/ β”‚ β”œβ”€β”€ documentation.md β”‚ └── ... β”œβ”€β”€ quartz/ β”‚ β”œβ”€β”€ cli/ β”‚ β”‚ β”œβ”€β”€ args.js β”‚ β”‚ β”œβ”€β”€ constants.js β”‚ β”‚ β”œβ”€β”€ handlers.js β”‚ β”‚ └── helpers.js β”‚ β”œβ”€β”€ components/ β”‚ β”‚ β”œβ”€β”€ pages/ β”‚ β”‚ β”œβ”€β”€ scripts/ β”‚ β”‚ β”œβ”€β”€ styles/ β”‚ β”‚ β”œβ”€β”€ Backlinks.tsx β”‚ β”‚ β”œβ”€β”€ Explorer.tsx β”‚ β”‚ └── ... β”‚ β”œβ”€β”€ plugins/ β”‚ β”‚ β”œβ”€β”€ emitters/ β”‚ β”‚ β”œβ”€β”€ filters/ β”‚ β”‚ β”œβ”€β”€ transformers/ β”‚ β”‚ β”œβ”€β”€ index.ts β”‚ β”‚ β”œβ”€β”€ types.ts β”‚ β”‚ └── vfile.ts β”‚ β”œβ”€β”€ processors/ β”‚ β”‚ β”œβ”€β”€ emit.ts β”‚ β”‚ β”œβ”€β”€ filter.ts β”‚ β”‚ └── parse.ts β”‚ β”œβ”€β”€ static/ β”‚ β”‚ β”œβ”€β”€ favicon.ico β”‚ β”‚ β”œβ”€β”€ site.manifest β”‚ β”‚ └── ... β”‚ β”œβ”€β”€ styles/ β”‚ β”‚ β”œβ”€β”€ base.scss β”‚ β”‚ β”œβ”€β”€ callouts.scss β”‚ β”‚ β”œβ”€β”€ custom.scss β”‚ β”‚ β”œβ”€β”€ syntax.scss β”‚ β”‚ └── variables.scss β”‚ β”œβ”€β”€ util/ β”‚ β”‚ β”œβ”€β”€ theme.ts β”‚ β”‚ β”œβ”€β”€ jsx.tsx β”‚ β”‚ └── ... β”‚ β”œβ”€β”€ bootstrp.cli.mjs β”‚ β”œβ”€β”€ bootstrap-worker.njs β”‚ β”œβ”€β”€ build.ts β”‚ β”œβ”€β”€ cfg.ts β”‚ └── worker.ts β”œβ”€β”€ .gitattributes β”œβ”€β”€ .gitignore β”œβ”€β”€ .npmrc β”œβ”€β”€ .prettierignore β”œβ”€β”€ .prettierrc β”œβ”€β”€ Dockerfile β”œβ”€β”€ LICENSE β”œβ”€β”€ README.md β”œβ”€β”€ globals.d.ts β”œβ”€β”€ index.d.ts β”œβ”€β”€ package-lock.json β”œβ”€β”€ package.json β”œβ”€β”€ quartz.config.ts β”œβ”€β”€ quartz.layout.ts β”œβ”€β”€ screenshot.png └── tsconfig.json ```
## License Source code in this repository is available under the [MIT License](LICENSE).