Awesome `linky-note` is a Python cli/package created with https://github.com/TezRomacH/python-package-template
Project description
linky-note
🤔 Description
This project provide a markdown to markdown converter that adds a Bi-Directional Link Section at the end of each markdown files that is converted. It is heavily inspired by the note-link-janitor
The project also provide a pre-commit hook so you can easily integrate it within your own projects easily
It relies heavily on the Marko python package that is the only Markdown Parser with a Markdown Renderer that I know of.
💭 Why
I believe a great amount of information can be extracted from collaborative notes if we take time to structure them correctly.
I wanted:
- To make collaborative notes
- To organize the notes in a Roam like manner
- Everyone to be able to navigate through the notes without installing anything
- This system to be easily adopted by a software engineering team.
Using git and this converter as a pre-commit, I can easily do all of this ! 🚀
Take a look at the example available in examples/adr
✨ Features
- Understands both Wikilinks and Markdown links
- Can use a reference system based on filename as unique Keys or titles as unique key.
- Can convert wikilinks to markdown links and reciprocally
- All this, entirely configurable through a simple stepper using
linky-note init
command
Limitations: If using wikilinks, a filename should be the same as it's title
🏃 Getting Started
Installation as a python package with pip
Considering you already have python available. You can simply add th
pip install --user linky-note
Then you can see all the option of the CLI using
linky-note --help
It is advised to start by configuring the CLI using
linky-note init
You can then apply the conversion
linky-note apply <INPUT_DIR> --output-dir <OUTPUT_DIR>
If no OUTPUT_DIR
is given, it will overwrite the files in INPUT_DIR
Installation as a pre-commit hook
This pre-commit hook use the [pre-commit](https://pre-commit.com) tool that you will need to install.Add the following line to your pre-commit configuration (.pre-commit-config.yaml
) at the root of your
repository.
repos:
- repo: https://github.com/jb-delafosse/linky-note
rev: v0.4.4
hooks:
- id: linky-note
args: ['directory-containing-my-markdown']
and install the hook using pre-commit install
You should also run linky-note init
at the root of your repo to configure linky-note
I'm also working on a not yet released github app that would make this workflow easier with a better integration with github. Feel free to take a look and let me know if you're interested.
🛡 License
This project is licensed under the terms of the MIT
license. See LICENSE for more details.
📃 Citation
@misc{linky-note,
author = {jb-delafosse},
title = {Awesome `linky-note` is a Python cli/package created with https://github.com/TezRomacH/python-package-template},
year = {2020},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/jb-delafosse/linky-note}}
}
Credits
This project was generated with python-package-template
.
It is heavily inspired by the note-link-janitor
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file linky-note-0.4.4.tar.gz
.
File metadata
- Download URL: linky-note-0.4.4.tar.gz
- Upload date:
- Size: 17.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.8.7 Linux/5.9.16-1-MANJARO
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 575124e803c5bd84ecb1226d36e1ca1887b7c1fe7809cf00c1e8995661831366 |
|
MD5 | db4630005531314ac4493cdd3e608baf |
|
BLAKE2b-256 | d5d393b04ab58a61538e84726725b5ecb352759de1a36c98660c9bd60001b2cb |
File details
Details for the file linky_note-0.4.4-py3-none-any.whl
.
File metadata
- Download URL: linky_note-0.4.4-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.8.7 Linux/5.9.16-1-MANJARO
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 621e1b6dafe3d3e99be8d37ea41d7a87cab2a14c4dbecde37af0983f3fa1c272 |
|
MD5 | 8e8a94d95bfbe652aa9aae5dc3343414 |
|
BLAKE2b-256 | 9ccc180215b18cc9c2cae5d340db942eccb3bc461a3470f95c6a16533e542854 |