Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/flecart/obsidown

Convert obsidian files into well linked markdowns
https://github.com/flecart/obsidown

jekyll markdown obsidian obsidian-md

Last synced: about 1 month ago
JSON representation

Convert obsidian files into well linked markdowns

Awesome Lists containing this project

README

        

# ObsiDown

Convert obsidian files into well linked markdowns!

## Example use cases
- Export Obsidian subdirectories while maintaining the links in markdown format
- Make obsidian math Kramdown-compatible
- Use obsidian to write for Jekyll web pages.

## How to use

Define a configuration file `config.yaml`. In the repo it is provided one as example.
Install the `poetry` dependencies and then you just need to run `poetry run python -m obsidown --config path/to/config.yaml`

It's possible to install from `pypi` index by `pip install obsidown`.
Then you can run it with `python -m obsidown`

## Feedback

This project is a hobby project used to automate some things I use myself. Currently it is a early early project!
If you need additional features or report some issues or need help, feel free to open a new issue.

## Documentation

The quickest way to check what is the format of the config file is to see the pydantic from `config.py`.
Here I will just outline it briefly.

- `sources` defines where to look for the input files.
- `paths`: where to look for the md files?
- `images`: where to look for the linked images?
- `output` defines where to write the exported files.
- `base`: defines the base url for links
- `path`: defines a subpath for the markdown files
- `images`: defines a subpath for the image fiiles
- `filesystem`: where to write
- `pipeline`: defines the single operations possible on a markdown file.
- `name`: the identifier of the operation, you should check `dispatch.py` for a list of the operations.
- `options`: variable options of the single operation.