Skip to content

A personal knowledge management system which is robust, cheap, yet powerful and build to last a lifetime.

License

Notifications You must be signed in to change notification settings

crelder/zettelkasten

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 

Repository files navigation

zettelkasten

The following project proposes a personal knowledge management system that is robust, cheap and built to last a lifetime.

NOTE: I still use the underlying system for personal management, but wrote a cli tool in Go called zet. As of July 2022, zettelkasten is deprecated and replaced by zet.

Motivation

We live in a knowledge-based society (German: "Wissensgesellschaft"). There are projects like Wikipedia, where collective knowledge about the world is processed and stored. However what about personal knowledge? Is there a way to equally enrich the way we process and store personal knowledge like the project Wikipedia does for collective knowledge?

This project might be the answer. Go to the Wiki in order to learn more about it.

Supporting python programs: Philosophy

All the following programs are short and simple programs. Actually you do not need them in order to use this proposed personal knowledge management system. The philosophy behind that is, that in order to use a personal knowledge management system that lasts a lifetime, you should be able to build it yourself. You should not depend on other's programs in order to use your personal knowledge system.

If you do not have programming skills, I recommend you to learn some in order to understand what these little programs do. Order for example the book Python Ge-Packt and read the first chapters or take a free python course at codecademy (it takes a few hours for this course).

All programs run with python3. You can download and install the programming language here. After the installation you can run the programs by either double clicking on them, or navigating in the programms "terminal" (Mac or Linux) or "cmd" (Windows) to the folder of the programs and type python NAMEOFTHEPROGRAM.py or py NAMEOFTHEPROGRAM.py (.py stands for python-files).

All programs are tested on a MacOS (10.13.5).

Supporting python programs: Use

The following programs make it easier to work with the personal knowledge management system called "zettelkasten":

checkZettelkasten.py

Check the zettelkasten's integrity (checkZettelkasten.py). This program operates read only on the files in the zettelkasten. It checks, if your zettelkasten is consistent. The criteria are:

  • all IDs are in the correct format and unique
  • links have the correct format
  • all links point to an existing ID

With errors: If your zettelkasten is damaged, it will look like this.

Without errors - the zettelkasten is consistent: If your zettelkasten is alright, it will look like this.

buildIDs.py

Assign correct IDs to all files in the folder "/zettel" (buildIDs.py). This program automatically assigns a correct small letter to a zettel ID.

After you renamed the png file names it looks like this.

The program buildIDs.py then automatically creates unique IDs.

link_overview.py

Shows how a certain zettel interlinks with other zettel in the zettelkasten (link_overview.py).

The program link_overview.py shows how the zettel are interlinked.

Program features are:

  • If you position the cursor on a zettel and press down the left mouse button, the zettel will enlarge in order to read it better.

  • If you right click on a certain zettel, the whole network will rebuild around this specific zettel.

  • You can write a certain zettel ID in the field and hit enter. The network will be then rebuild around this specific zettel.

This program is only useful, if you have more than about 1000 zettel in your zettelkasten. It is for advanced use and a more complicated program to understand. Note: if you use a Mac you have to change in line 4 "tkinter" to "Tkinter" (for now this is the workaround).

buildGephiGraphFile.py

It takes as an input the path to your zettelkasten and returns a Gephi-File (.gexf).

Install the open-source Graph-Tool Gephi.

You can then import this Gephi-File and use e.g. the Yifan Hu layout (works well for me) to display where your thoughts cluster around which topics.


Overview on your thoughts.


Overview on your thoughts.


Overview on your thoughts.


backup.py

Generate a list with the filename (metadata) of every zettel and save it in the folder "/Backups" (backup.py). You can print this list every now and then and store it in the physical zettelkasten as a backup in case your computer crashes. From this list and the physical zettel you can always completly recover your digital zettelkasten.

About

A personal knowledge management system which is robust, cheap, yet powerful and build to last a lifetime.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages