Skip to content

Commit

Permalink
Added Releasenotes (#202)
Browse files Browse the repository at this point in the history
  • Loading branch information
mprinkezs committed Sep 11, 2024
1 parent 3fdf84c commit 72422ea
Show file tree
Hide file tree
Showing 4 changed files with 73 additions and 20 deletions.
54 changes: 38 additions & 16 deletions doc/howtos/app_documentation/app_documentation.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,49 @@
# Documenting Apps

💡 The App documentation is part of the packaged App.
```{note}
The App documentation is part of the packaged App.
```

```{eval-rst}
.. toctree::
:hidden:
assets/Releasenotes.md
```

## Terminology

![](assets/add-on_terminology.png)

| Index | Item | Description | Origin |
| ----- | ------------------------------ | ---------------------------------------------------------- | -------------------------------------------------------------- |
| 1 | Title | App title | 'Title' field in the App. Set during App creation. |
| 2 | Company | Company which maintains the App | Company the uploading account belongs to. |
| 3 | App description | App short description | 'Description' field in the App. Set during App creation. |
| 4 | Splash description | Some information about the App, e.g. for advertising it | doc/README.md from the App. See below how to edit it. |
| 5 | Link to complete documentation | Complete App documentation | Something referenced from within the doc/README.md. Can be a PDF, a link to some external site, ... |
| Index | Item | Description | Origin |
| ----- | ------------------------------ | ---------------------------------------------------------- | ------------------------------------------------------------------- |
| 1 | Title | App title | 'Title' field in the App.<br>Set during App creation. |
| 2 | Company | Company which maintains the App | Company the uploading account belongs to.<br>Set during App creation. |
| 3 | App description | App short description | 'Description' field in the App.<br>Set during App creation. |
| 4 | Splash description | Some information about the App,<br>e.g. for advertising it | doc/README.md from the App.<br>See below how to edit it. |
| 5 | Link to complete<br>documentation | Complete App documentation | Something referenced from within the doc/README.md.<br>Can be a PDF, a link to some external site, ... |

## App documentation structure

## App structure
```{note}
An App (`.addon` file) is technically a ZIP file. See [App file format](../app_file_format/app_file_format.md) for details.
```

An App file is technically a ZIP file.
* Mandatory contents:
* `doc/README.md` &mdash; this will be rendered as the product's splash description ad.
* `Releasenotes.md` and `Releasenotes.pdf` &mdash; The Markdown file allows viewing in the App Editor while the PDF file is used in the ZEISS Quality Software Store.
* Recommended contents:
* `Documentation.md` (and optional `Documentation.pdf`) &mdash; full App documentation

* It must at least contain a file `doc\README.md`, which will be rendered as the product's splash description ad.
* It can contain an arbitrary number of additional files in the `doc` folder referenced from within the `README.md` file.
* The full documentation can be provided in a file `Documentation.md`.
The App can contain an arbitrary number of additional files in the `doc` folder referenced from within the files `README.md` or `Documentation.md`.

### Example

* Documentation related content of the App 'Python API Examples':

![](assets/7-ZIP_README.png)

* The README.md is the starting point for rendering the App's splash description and will reference all other files:
* The README.md is the starting point for rendering the App's splash description and will reference other files:

![](assets/Edit_README.png)

Expand All @@ -41,17 +56,24 @@ An App file is technically a ZIP file.
```{note}
See [markdown guide](https://www.markdownguide.org/basic-syntax/) for a brief description of the markdown format.
```
See ZEISS Industrial Quality Suite → Store → Python API Examples for example.

See [ZEISS Quality Software Store &mdash; FileSelectionAndFiltering](https://software-store.zeiss.com/products/apps/FileSelectionAndFiltering) for example.

![](assets/markdown_editor_viewer.png)
A markdown editor/viewer is integrated in the ZEISS INSPECT App editor.

See [Releasenotes template](assets/Releasenotes.md).

## Portable Document Format (PDF)

The standard expression to reference a PDF from `doc/README.md` is:

```{code-block} markdown
:caption: doc\/README.md
See PDF for detailed description: [PDF](README.pdf)
See [Documentation](Documentation.pdf) for detailed description.
```

## Converting Markdown files to PDF

The [Visual Studio Code](https://code.visualstudio.com/) extension [Markdown PDF](https://marketplace.visualstudio.com/items?itemName=yzane.markdown-pdf) allows to convert a Markdown file to PDF.
25 changes: 25 additions & 0 deletions doc/howtos/app_documentation/assets/Releasenotes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
```{code-block} markdown
:caption: doc\/Releasenotes.md
# Release Notes \<ThisApp\>
## Released at \<yyyy-mm-dd\> (v\<major\>.\<minor\>.\<bugfix\>)
* <Desciption of user-relevant changes (Fixed / Added / Updated ...)>
* ...
## Released at \<yyyy-mm-dd\> (v1.0.0)
* Initial release
```
---
# Release Notes \<ThisApp\>

## Released at \<yyyy-mm-dd\> (v\<major\>.\<minor\>.\<bugfix\>)

* <Desciption of user-relevant changes (Fixed / Added / Updated ...)>
* ...

## Released at \<yyyy-mm-dd\> (v1.0.0)

* Initial release
Binary file modified doc/howtos/app_documentation/assets/markdown_editor_viewer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 10 additions & 4 deletions doc/howtos/app_file_format/app_file_format.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

## Introduction

💡 An ZEISS INSPECT App file (extension: *.addon) is a ZIP archive with pre-defined folder- and filenames.
```{note}
An ZEISS INSPECT App file (extension: *.addon) is a ZIP archive with pre-defined folder- and filenames.
```

While an App file will be created and modified with the App Editor in most cases, it can also be unzipped/edited/zipped manually if necessary.

Expand All @@ -13,15 +15,17 @@ While an App file will be created and modified with the App Editor in most cases
| File | Description |
| ----------------- | ------------------------------------------------------------------------------------------------------------ |
| `<other folder>/` | All other folders are containing App content. The format of this content is discussed below. |
| `doc/` | App documentation as displayed in the Software Store. Must contain a `README.md` file in markdown format. |
| `doc/` | App documentation as displayed in the Software Store. Must contain a `README.md` file in markdown format and release notes in markdown format and PDF. |
| `icon.png` | App icon as displayed in the App Manager and the Software Store |
| `key.enc` | App protection and licensing information in case the App is protected |
| `license/` | Terms-of-use related to this App. Can contain a set of text files like `license.txt` , `license_numpy.txt` , ... which will be displayed and must be acknowledged upon App installation |
| `metainfo.json` | App metainfo data (title, description, version, ...) |

### Content types

💡 The top level folders determine the "content type". Inside these top level folders, a separate sub folder must be provided for each item.
```{note}
The top level folders determine the "content type". Inside these top level folders, a separate sub folder must be provided for each item.
```

| Folder / Provider name | Content type | Notes |
| ------------------------- | ----------------------------------------------- | ------------ |
Expand Down Expand Up @@ -59,7 +63,9 @@ While an App file will be created and modified with the App Editor in most cases

### Content data

💡 Each "content object" consists of a folder in one of the "content type" (top level) folders.
```{note}
Each "content object" consists of a folder in one of the "content type" (top level) folders.
```

* A "content object" is a single template/script/element/... distributed via an App.
* Each "content object" is represented by the content of a folder in the "content type" folder matching the content type.
Expand Down

0 comments on commit 72422ea

Please sign in to comment.