michelk / neuron

Haskell meets Zettelkasten, for your plain-text delight.

Home Page:https://neuron.zettel.page

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

neuron

BSD3 built with nix Zulip chat

neuron is a system for managing your plain-text Zettelkasten notes.

Features

  • Extended Markdown for easy linking between zettels
  • Web interface (auto generated static site)
  • Graph view of zettels (organic category tree)
  • CLI for creating new zettels with automatic ID

Getting started

See neuron.zettel.page for the full guide to installing and using neuron.

Developing

When modifying src/Neuron, use ghcid as instructed as follows to monitor compile errors:

nix-shell --run ghcid

You can test your changes by running it on the ./guide (or any) zettelkasten as follows:

bin/run -d ./guide rib -wS

This command will also automatically recompile and restart when you change any of the Haskell source files.

Running tests

Unit tests can be run via ghcid as follows:

bin/test

Developing PureScript code

If you are modifying the PureScript sources under ./src-purescript, you must run the following to compile them to JavaScript code that will be used when later building Neuron.

bin/ps/build

Then commit the resulting .js files to the git repo.

During development of PureScript code you may also use pscid to get instant feedback on compile errors:

bin/ps/pscid

About

Haskell meets Zettelkasten, for your plain-text delight.

https://neuron.zettel.page

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Haskell 85.5%Language:Dhall 5.5%Language:Nix 4.4%Language:JavaScript 3.4%Language:PureScript 0.8%Language:Shell 0.5%