zettel

module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2020 License: GPL-3.0

README


Logo


Explore the docs »

Report Bug · Request Feature

zettel is a simple FOSS tool to jot down notes using Zettelkasten methodology. The core aim of zettel is to store notes for life. The notes are in simple markdown format which can be published as a static website.

Features

  • Generate static website using zettel build.
  • No external dependency of any app or SASS vendor lock in for your notes. zettel operates on plain markdown files.
  • Generate Connections between notes with a simple syntax.
  • Visualise all the connections with a Graph UI.
  • No $EDITOR dependency. The markdown notes work same everywhere!

Why would I use this?

Host your own data

If you don't want to lock in your precious data with a SAAS provider. You don't have to trust this tool to last forever - for your data to outlast you. zettel uses the notes from local disk and generates connections out of it which can be published as a static webpage.

Opinionated Zettelkasten Workflow

If you want an opinionated yet productive workflow.This tool is quite blunt about doing just one thing - taking notes using Zettelkasten philosophy. This is not a generic tool to take notes although you can use as one.

The real power of this tool lies in the UX while creating and connecting the notes - it helps you organize your notes in a structured format and visualise the graph structure of your notes.

Philosophy

Our thinking process isn't linear but most of the note taking tools coerce you into structuring your notes in a hierarchical form. Zettelkasten takes a completely different approach: There's no strict hierarchy and any note can be "linked" to another note. Think of it like your second brain.

A connection can be created in a note using [[slug]] syntax. The slug of the markdown file is replaced with the link to the note and a "connection" is established between these 2 notes.

In the graph UI terminology, the 2 notes act as the vertex of the graph connected by an edge.

Installation

Grab the latest binary

$ cd "$(mktemp -d)"
$ curl -sL "https://github.com/hackstream/zettel/releases/download/0.1.0/zettel_0.1.0_$(uname)_amd64.tar.gz" | tar xz
$ mv zettel /usr/local/bin
# zettel should be available now in your $PATH
$ zettel --version

Usage

NAME:
   zettel - Zettel builds a digital Zettelkasten website for your notes in Markdown.

USAGE:
   zettel.bin [global options] command [command options] [arguments...]

VERSION:
   a5fd18b (2020-09-13 11:51:10 +0530)

AUTHOR:
   Hackstream Devs

COMMANDS:
   init, i   Initializes a new zettel site with default config.
   new, n    Create a new post.
   build, b  Builds a static dist of all notes ready to be published on web.
   help, h   Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --verbose      Enable verbose logging (default: false)
   --help, -h     show help (default: false)
   --version, -v  print the version (default: false)

Initialise a new project

zettel init $SITENAME: Creates a new $SITENAME folder which holds zettel config files and a default index.md.

Create a new post

zettel new $TITLE: Creates a new $TITLE.md inside content/ directory with the current date in metadata.

Build website

zettel build: Runs a pipeline to iterate over all markdown files in content/*.md, create connections across posts and output a dist folder with the static assets. This folder contains index.html which becomes the root of your website.

Configuration

A default config.toml is created for you when you initialise the site. The following options can be edited:

  • site_name: Site name for your website.
  • description: A short one liner description for your website.

⭐️ Show your support

Give a ⭐️ if this project helped you!

Contribution

PRs on Feature Requests, Bug fixes are welcome. Feel free to open an issue and have a discussion first. Read CONTRIBUTING.md for more details.

For a list of things to improve visit TODO.md

License

GPL v3

Directories

Path Synopsis
cmd
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL