| .vscode | ||
| scripts | ||
| zk | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc | ||
| 2024_03_11.md | ||
| README.md | ||
Eólas

Eólas is Irish for knowledge or information, especially knowledge gained by experience or practice
This repository is my technical knowledge management system or "second-brain". It comprises notes from my autodidactic study of software engineering and computer science.
Implementation
It is a Zettelkasten work in progress. I've recently converted the topic-based subdirectories into a single flat directory structure organised by tags. I'm in the process of partitioning longer notes into smaller informational units.
I use the zk CLI package to help with indexing and task automation alongside its zk-nvim Neovim wrapper. I occassionally utilise Obsidian alongside Neovim for when I want to view my notes as a knowledge graph or read them alongside their rich content (images, videos etc).
Commands
Commands are local to my Linux machine, specified in my dotfiles. They are how I generate new entries and manage the knowledge base.
| Alias | Command | Output | 
|---|---|---|
z | 
cd $HOME/repos/eolas | 
Access Zettelkasten | 
zn | 
zk new --title ... | 
Create new entry from template | 
<leader> zk | 
:ZkNotes | 
Access Zettelkasten from anywhere within nvim | 
<leader> zi | 
:ZkIndex | 
Index Zettelkasten within nvim | 
<leader> zt | 
:ZkTags | 
View tags via Telescope within nvim | 
<leader> ztt | 
:ObsidianTags | 
View tags in a Vim buffer via within nvim using obsidian-nvim | 
<leader> zl | 
:ZkLinks | 
View links in current entry via Telescope within nvim, using obsidian-nvim | 
<leader> zb | 
:ZkBacklinks | 
View backlinks to current entry via Telescope within nvim, using obsidian-nvim | 
Frontmatter
When I run the zn command this generates a new Zettelkasten entry with the
following frontmatter template:
---
id: o8yzcrtv
title: test
tags: []
created: Saturday, February 17, 2024 | 17:44
---
Scripts
The scripts directory contains several Bash and Python scripts I use for general housekeeping, such as formatting image URLs, removing unused assets, and autosaving.
Autosave
I use a bash script to create autosave functionality via Git. This script runs every 15 minutes via a systemd time timer. It tidies up the directory (removes unused images, ensures all file names use underscores rather than spaces and hyphens etc) and commits and pushes to GitHub.