InvenTree/docs
Oliver e8d16298a4
Label plugin refactor (#5251)
* Add skeleton for builtin label printing plugin

* Force selection of plugin when printing labels

* Enhance LabelPrintingMixin class

- Add render_to_pdf method
- Add render_to_html method

* Enhance plugin mixin

- Add class attribute to select blocking or non-blocking printing
- Add render_to_png method
- Add default method for printing multiple labels
- Add method for offloding print job

* Simplify print_label background function

- All arguments now handled by specific plugin

* Simplify label printing API

- Simply pass data to the particular plugin
- Check result type
- Return result

* Updated sample plugin

* Working on client side code

* Cleanup

* Update sample plugin

* Add new model type

- LabelOutput model
- Stores generated label file to the database
- Makes available for download

* Update label printing plugin mixin

* Add background task to remove any old label outputs

* Open file if response contains filename

* Remove "default printer" option which does not specify a plugin

* Delete old labels after 5 days

* Remove debug statements

* Update API version

* Changed default behaviour to background printing

* Update label plugin mixin docs

* Provide default printer if none provided (legacy)

* Update unit test

* unit test updates

* Further fixes for unit tests

* unit test updates
2023-07-17 21:39:53 +10:00
..
_includes remove unneeded gunicorn (#5248) 2023-07-17 20:53:02 +10:00
ci Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
docs Label plugin refactor (#5251) 2023-07-17 21:39:53 +10:00
__init__.py Fixes for docs building (#4659) 2023-04-22 23:35:25 +10:00
.gitignore Documentation Improvements (#4894) 2023-05-25 22:42:16 +10:00
LICENSE Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
main.py Code style improvements (#4683) 2023-04-28 20:49:53 +10:00
mkdocs.yml Build line labels (#5034) 2023-06-14 13:07:18 +10:00
README.md Fix common spelling mistakes (#4956) 2023-06-04 00:04:52 +10:00
requirements.txt Improve devdocs (#4813) 2023-06-09 10:16:30 +10:00

InvenTree Documentation

Documentation Status

This repository hosts the official documentation for InvenTree, an open source inventory management system.

To serve this documentation locally (e.g. for development), you will need to have Python 3 installed on your system.

Setup

Run the following commands from the top-level project directory:

$ git clone https://github.com/inventree/inventree
$ cd inventree/docs
$ pip install -r requirements.txt

Serve Locally

To serve the pages locally, run the following command (from the top-level project directory):

$ mkdocs serve -f docs/mkdocs.yml -a localhost:8080

Edit Documentation Files

Once the server is running, it will monitor the documentation files for any changes, and update the served pages.

Admonitions

"Admonition" blocks can be added as follow:

!!! info "This is the admonition block title"
    This is the admonition block content

Refer to the reference documentation to customize the admonition block to the use-case (eg. warning, missing, info, etc.).

Links to internal documentation pages must use relative pathing, otherwise the link will be broken by the readthedocs URL formatting.

Also, linking to an internal page must use the .md suffix!

For example, to link to the page /part/views from /stock/stocktake, the link must be formed as follows:

Click [here](../part/views.md)

Formatting the link as follows:

Click [here](/part/views)

will result in a broken link.

Images

Images are served from the ./docs/assets/images folder and can be added as follow:

{% with id="image_id", url="folder/image_name.png", description="Text shown if image is not loaded properly" %}
{% include 'img.html' %}
{% endwith %}

Replace:

  • image_id with a short unique identifier for the image (most commonly, image_id is same as image_name)
  • folder with the folder in docs/assets/images in which the image is stored
  • image_name with the name of the image
  • .png with the image extension (PNG or JPEG are preferred formats)

Global variables

Refer to the reference documentation to find out how to add global variables to the documentation site.

Global variables should be added in the # Global Variables section of the mkdocs.yml configuration file.

Credits

This documentation makes use of the mkdocs-material template