Docki

Note

This project is under renovations. It can be used, but it might not be completely stable yet.

Preview

screencast

Docki is cli for converting asciidoctor files into html files.

Usage

Note

This works in a directory with a directory called docs, which contains the asciidoctor documentation.

Building the documentation

docki build

Serving the documentation on a live server

docki serve

Installation

Nix

This installation method is recommended, because it will include both asciidoctor and asciidoctor_revealjs.

Note: This is the most basic installation. If you are already more experienced, you might want to add it to your shell or home manager configuration.

nix profile install github:quirinecker/docki

Homebrew

Note

Installing it via homebrew will not include asciidoctor_revealjs. It can be installed afterwards with docki install-reveal

brew tap quirinecker/docki-homebrew https://github.com/quirinecker/docki-homebrew
brew install docki

Cargo

Note

This is the most basic installation. It will not include asciidoctor_revealjs and asciidoctor itself. Installing asciidoctor has to be done manually, while installing asciidoctor_revealjs can be done with docki install-reveal

cargo install docki

Docker

There is also a docker image available to use. It is primarily used for the gh actions.

docker pull ghcr.io/quirinecker/docki:latest

You can also build it yourself with nix.

nix build .#docker && docker load -i result

Nix (Advanced, Flake)

Note

There are multiple ways to install docki with nix. This is the way I installed it on my machine.

  1. Add it to the flake inputs
docki = {
	url = "github:quirinecker/docki";
	inputs.nixpkgs.follows = "nixpkgs";
};
  1. Add @inputs at the end of the outputs (if you haven't already)
outputs = {
	nixpkgs
	...
}@inputs:
...Rest of your flake...
  1. Add the input to your system packages (system configuration) or home packages (home manager configuration)
environment.systemPackages = with pkgs; [
	inputs.docki.packages.${system}.default
]

or

home.packages = with pkgs; [
	inputs.docki.packages.${system}.default
]

Development

Running it

If you just want to run it, you can use the nix run command. This will install all the build dependencies, build the binary and run it.

nix run

Development Shell

You can also use the development shell with the command below. In this shell all dependencies for building and running the project are installed.

nix develop

Afterwards it can be built and run with cargo

cargo run -- <args>
Description
No description provided
Readme 21 MiB
Languages
Rust 85.2%
Nix 14.8%