Skip to content

Commit

Permalink
[doc] Add user documentation
Browse files Browse the repository at this point in the history
Signed-off-by: Laurent Fasani <[email protected]>
  • Loading branch information
lfasani committed Nov 22, 2024
1 parent 639eb4c commit cdfe450
Show file tree
Hide file tree
Showing 14 changed files with 171 additions and 2 deletions.
3 changes: 2 additions & 1 deletion README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ image::PepperScreenshot.png[Pepper]
Pepper is a web application based on (https://www.eclipse.org/sirius/sirius-web.html[Eclipse Sirius-Web]).

It allows to create data related to your project and represents the data with Gantt, Form and boards like Daily, Kanban or OKR.
Follow the link for more details link:#functionalities[the functionalities].
Follow the link for https://github.com/ObeoNetwork/pepper/blob/main/doc/user.adoc[User documentation].


This repository is a mono repo containing both frontend and backend components.

Expand Down
64 changes: 64 additions & 0 deletions backend/deeplab-frontend/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,70 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
<executions>
<execution>
<id>get-the-git-infos</id>
<goals>
<goal>revision</goal>
</goals>
<phase>initialize</phase>
</execution>
</executions>
<configuration>
<generateGitPropertiesFile>false</generateGitPropertiesFile>
<injectAllReactorProjects>true</injectAllReactorProjects>
<commitIdGenerationMode>full</commitIdGenerationMode>
<includeOnlyProperties>
<includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
</includeOnlyProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>2.2.4</version>
<executions>
<execution>
<id>convert-to-html</id>
<phase>generate-resources</phase>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<sourceDirectory>${project.basedir}/../../doc/</sourceDirectory>
<outputDirectory>${project.basedir}/src/main/resources/static/doc/</outputDirectory>
<preserveDirectories>true</preserveDirectories>
<attributes>
<toc>left</toc>
<icons>font</icons>
<source-highlighter>coderay</source-highlighter>
<imagesdir>./images</imagesdir>
<deeplab-version>${project.version}</deeplab-version>
<git-commit-id-abbrev>${git.commit.id.abbrev}</git-commit-id-abbrev>
</attributes>
<resources>
<resource>
<!-- (Mandatory) Directory to copy from. Paths are relative to maven's
${baseDir} -->
<directory>../../doc/images</directory>
<!-- (Optional) Directory to copy to. By default uses the option
`outputDirectory` -->
<targetPath>images</targetPath>
<!-- (Optional) If not set, includes all files but default exceptions
mentioned -->
<includes>
<include>**/*.png</include>
<include>**/*.svg</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Binary file added doc/images/concepts.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/create-model-button.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/create-model-dialog.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/create-projectmgmt-project.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/create-representation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/representation-daily.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/representation-form.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/representation-gantt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/representation-kanban.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/representation-okr.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
103 changes: 103 additions & 0 deletions doc/user.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
= User documentation

Pepper is a project management tool.

It allows creating data related to your project and represents the data with Gantt, Form and boards like Daily, Kanban or OKR.

As `Pepper` is based on Sirius Web application, please refer to the https://www.eclipse.org/sirius/sirius-web.html[Sirius Web documentation] for more details.

== Concepts

The core concept is the `Project`.
It contains:

* many attributes to describe the `Project` such as planning, cost or stakeholder information.
* a list of `Workpackages`
* a list of `Risks`
A `Risk` is associated to one or many `Workpackages`
* a list of `Objectives`

A `Workpackage` contains
* a list of `WorkpackageArtefact`
* a list of `Tasks`.
`Tasks` is a fine-grained concept to describe the `Workpackage`

At root level, you can create `Organizations` that own the `Projects` and `ResourceFolders` which contain `Persons`, `Teams`, `InternalStakeholders` and `ExternalStakeholders`.

image::images/concepts.png[Concepts]

== Starter

To start the user need to create a Sirius project that will contain a model containing the concepts.
By default, a blank model is created.
You can add a new model by adding a blank or a sample model.
The sample model is useful to see the concepts that are possible to create.

image::images/create-projectmgmt-project.png[Create Project]

image::images/create-model-button.png[Create Model Button]

image::images/create-model-dialog.png[Create Model Dialog]

== Representations

Once you have created the model, you can create representations of your model.
Representation is the core feature that will help display and edit your data.

You can create a representation using the contextual menu on the object.

image::images/create-representation.png[Create Model Dialog]

=== Form on Project

Project is the key concept.
A `Form` representation can be created from a `Project`.
It contains many tabs that display project information.

image::images/representation-form.png[Form]


=== Gantt on Project and Workpackage

A `Gantt` representation can be created from a `Project` or a `Workpackage`

image::images/representation-gantt.png[Gantt]

In `Gantt` on `Project`, the Gantt tasks represent the `Workpackage` of the `Project`.

In `Gantt` on `Workpackage`, the Gantt tasks represent the `Tasks` and sub `Tasks` of the `Workpackage`.

You can

* create new tasks
* change the dates of the task by moving the task or changing in `Details` panel
* reorder existing tasks or change the parent of a task

=== Deck on Project and Workpackage

A `Deck` representation is a representation which have columns and card inside columns.
The cards can be moved from a column to another.

==== OKR

The `OKR` representation can be created from a `Project` or a `Workpackage`.
The columns represent the `Objectives` contained in the Project or Workpackage and the cards represent the `KeyResult`.

image::images/representation-okr.png[OKR]

==== Daily

The `Daily` representation can be created from a `Workpackage`.

image::images/representation-daily.png[Daily]

The columns represent the `TaskTags` (with _daily_ prefix) contained in the `TagFolder` and the cards represent the `Tasks` that have a reference to the corresponding `TaskTag`.


==== Kanban

The `Kanban` representation can be created from a `Workpackage`.

image::images/representation-kanban.png[Daily]

The columns represent the `TaskTags` (with _kanban_ prefix) contained in the `TagFolder` and the cards represent the `Tasks` that have a reference to the corresponding `TaskTag`.
3 changes: 2 additions & 1 deletion frontend/deeplab-web/src/core/Help.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import Link from '@mui/material/Link';
import { emphasize } from '@mui/material/styles';
import { makeStyles } from 'tss-react/mui';
import HelpIcon from '@mui/icons-material/Help';
import { httpOrigin } from '../core/URL';

const useHelpStyle = makeStyles()((theme) => ({
onDarkBackground: {
Expand All @@ -28,7 +29,7 @@ export const Help = () => {
const { classes } = useHelpStyle();
return (
<Link
href="https://github.com/ObeoNetwork/pepper"
href={`${httpOrigin}/doc/user.html`}
rel="noopener noreferrer"
target="_blank"
color="inherit"
Expand Down

0 comments on commit cdfe450

Please sign in to comment.