Automatically generate documentation in Dokuwiki
Project description
Dokuwiki-AutoDoc
Automatically generate documentation of your experiments in DokuWiki! This way, you won't loose track or overview of your progress!
This package uses the DokuWiki python package to automatically access DokuWiki and write reports generated from Liquid templates. Plots generated from your measurements are uploaded as well.
This package is intended to be run in a Jupyter Lab environment and uses interactive prompts to authenticate against the wiki.
Usage
To establish a connection to your wiki, run
doc = AutoDocumentation("https://your.wiki/")
This will prompt you for your username and password.
Next, to generate a report from a measurement in qkit, run the following directly after your measurement:
with QkitDocumentationBuilder(doc, 'sample:yoursample') as builder:
builder.upload_images()
builder.generate_report(QKIT_TEMPLATE)
builder.generate_table_entry(["Type", "Comment"], lambda data: [
data['measurement']['measurement_type'],
input("Comment: ")
])
This will
- Upload the plots generated from your measurement by qkit
- Build a report from a template
- Insert a reference to this measurement into an overview table (UUID, Date) with additional columns as defined (Type, Comment).
For safety reasons, the table page is only amended. This means, that only the last table of the page can be extended. Therefore, it may be warranted to include multiple sub-pages on a sample page. This can be done with the Include Plugin.
Templates
Templates for your reports are defined using the Liquid templating language. As DokuWiki uses curly braces for images and square brackets for links, Liquid is configured to use '{[' and ']}' (respectively '{%' '%}') instead. An Example may look like
{% extends "doc_base.txt.liquid" %}
{% block title %} My Title {% endblock %}
{% block content %}
More content
{% endblock%}
which takes data from your qkit
measurement and its settings to fill out the page, using the doc_base.txt.liquid
template.
Installation
pip install dokuwiki-autodoc
Do note, that this project depends on qkit, but as qkit is not yet on PyPi, you will need to install it manually.
Testing
Run a temporary dokuwiki instance on your local machine at http://localhost
. Change the password and username in the mocked sys.stdin
.
In order to test qkit interoperability, you will need to change the SAMPLE
to one in your data directory.
License
dokuwiki-autodoc
is distributed under the terms of the GPLv2 license.
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 dokuwiki_autodoc-1.0.0.tar.gz
.
File metadata
- Download URL: dokuwiki_autodoc-1.0.0.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d8ea4fe033ae396167a4e2bb93e42f7a694881a8c0e4e8864e175f7fbdb3880 |
|
MD5 | 1494ce287c5e437adc114f5bc207935b |
|
BLAKE2b-256 | cee6645f805f1c75409da94c54d34a706ac572c7c2e564a15a352f010c7cd835 |
File details
Details for the file dokuwiki_autodoc-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: dokuwiki_autodoc-1.0.0-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8434564819a21c8f6c562ce3da1c4ee2f061a3404e4de5d9d118230dece70b83 |
|
MD5 | a78bac9f7b9b48cc9dcb739503cdf970 |
|
BLAKE2b-256 | 1cbb1858729e9f2bded99eb21b441e7fc0717ef056db367bf8ab08ccff9b57a4 |