Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chore/#1070 release checks r24.8 Preparation for release #R24.8 #1236

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
_**For better traceability add the corresponding GitHub issue number in each changelog entry, please.**_
## [UNRELEASED - DD.MM.YYYY]
### Changed
- #1070 Converted pngs of concept into svg
- #1070 Update project documentation to current state
- #1070 formatting README
- #1070 Add code coverage badges
- #965 Implement proxy functionality of the IRS policy store
- #962 Changed notification model to new one in frontend/backend
- #962 Removed initial notification message for notification flow
Expand Down
14 changes: 7 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).


* Add release notes for new version in [CHANGELOG.md](CHANGELOG.md)
* Add release notes for new version in [CHANGELOG.md](CHANGELOG.md)
* Features of your product(s) or component(s), available for market entry
* Please provide minimum 5 to maximum 10 key feature descriptions
* Use category “ADDED” as per good practice
Expand All @@ -103,7 +103,7 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
_**For better traceability add the corresponding GitHub issue number in each changelog entry, please.**_

### git-hooks
Use git-hooks to ensure commit message consistency.
Use git-hooks to ensure commit message consistency.
Detailed pattern can be found here: [commit-msg](https://github.com/eclipse-tractusx/traceability-foss/blob/457cb3523e981ef6aed98355a7faf0ff29867c33/dev/commit-msg#L4)

#### How to use
Expand All @@ -123,10 +123,10 @@ The commit messages have to match a pattern in the form of:

````
fix(api):[TRACEFOSS-123] Fix summary what is fixed.
chore(repos):[TRACEFOSS-123] Configuration change of ci cd pipeline for new repository.
chore(repos):[TRACEFOSS-123] Configuration change of ci cd pipeline for new repository.
docs(arc42):[TRACEFOSS-123] Added level 1 description for runtime view.
chore(helm): TRACEFOSS-1131- Moving the values under the global key - increasing the version

chore(helm): TRACEFOSS-1131- Moving the values under the global key - increasing the version
````

## Pull Request &  Reviews
Expand Down Expand Up @@ -161,9 +161,9 @@ Only after the code is stable it can be merged to main.
- chore/* - any small change without any impact
- Branch Name:
- MUST contain : Issue ID in the format #XXX
- MUST contain: Subject of issue (Abbreviation of pbi summary without using spaces / use "-" to connect)
- MUST contain: Subject of issue (Abbreviation of pbi summary without using spaces / use "-" to connect)

<img src="https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/images/github-flow-branching-model.jpeg" height="60%" width="60%"/>
<img src="https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/images/github-flow-branching-model.svg" height="60%" width="60%"/>

### Commit messages
- The commit messages have to match a pattern in the form of:
Expand Down
115 changes: 65 additions & 50 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,46 +4,51 @@
[![CC BY 4.0 License](https://img.shields.io/badge/Non--code_license-CC%20BY%204.0-orange.svg)](https://github.com/eclipse-tractusx/traceability-foss/blob/main/LICENSE_non-code)
[![QG Backend](https://sonarcloud.io/api/project_badges/measure?project=eclipse-tractusx_traceability-foss-backend&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=eclipse-tractusx_traceability-foss-backend)
[![QG Frontend](https://sonarcloud.io/api/project_badges/measure?project=eclipse-tractusx_traceability-foss-frontend&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=eclipse-tractusx_traceability-foss-frontend)
[![Coverage Backend](https://sonarcloud.io/api/project_badges/measure?project=eclipse-tractusx_traceability-foss-backend&metric=coverage)](https://sonarcloud.io/summary/new_code?id=eclipse-tractusx_traceability-foss-backend)
[![Coverage Frontend](https://sonarcloud.io/api/project_badges/measure?project=eclipse-tractusx_traceability-foss-frontend&metric=coverage)](https://sonarcloud.io/summary/new_code?id=eclipse-tractusx_traceability-foss-frontend)
[![Kics](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/kics.yml/badge.svg)](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/kics.yml)
[![Trivy](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/trivy.yml/badge.svg)](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/trivy.yml)
[![Eclipse DASH IP Check](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/eclipse-dash.yml/badge.svg)](https://github.com/eclipse-tractusx/traceability-foss/actions/workflows/eclipse-dash.yml)
[![[BE] Dependency check](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/dependency-check.yml/badge.svg)](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/dependency-check.yml)

## Trace-X is a system for tracking parts along the supply chain.
#### A high level of transparency across the supplier network enables faster intervention based on a recorded event in the supply chain. This saves costs by seamlessly tracking parts and creates trust through clearly defined and secure data access by the companies and persons involved in the process.

A high level of transparency across the supplier network enables faster intervention based on a recorded event in the supply chain. This saves costs by seamlessly tracking parts and creates trust through clearly defined and secure data access by the companies and persons involved in the process.

## Table of Contents
- [Trace-X](https://github.com/eclipse-tractusx/traceability-foss/#trace-x-is-a-system-for-tracking-parts-along-the-supply-chain)
- [Trace-X](#trace-x-is-a-system-for-tracking-parts-along-the-supply-chain)
- [Introduction](#introduction)
- [Vision and Mission Statement](#vision-and-mission-statement)
- [Trace-X Feature list](#trace-x-feature-list)
- [How to contribute](https://github.com/eclipse-tractusx/traceability-foss/#how-to-contribute)
- [Releasing](https://github.com/eclipse-tractusx/traceability-foss/#releasing)
- [Environments](https://github.com/eclipse-tractusx/traceability-foss/#environments)
- [The frontend application](https://github.com/eclipse-tractusx/traceability-foss/#the-frontend-application)
- [Challenges and solutions](https://github.com/eclipse-tractusx/traceability-foss/#challenges-and-solutions)
- [Prerequisites](https://github.com/eclipse-tractusx/traceability-foss/#frontend-prerequisites)
- [Installation](https://github.com/eclipse-tractusx/traceability-foss/#frontend-installation)
- [Getting started](https://github.com/eclipse-tractusx/traceability-foss/#getting-started)
- [Application authentication](https://github.com/eclipse-tractusx/traceability-foss/#application-authentication)
- [Application architecture & patterns](https://github.com/eclipse-tractusx/traceability-foss/#application-architecture--patterns)
- [How to contribute](#how-to-contribute)
- [Releasing](#releasing)
- [Environments](#environments)
- [Frontend Application](#frontend-application)
- [Challenges and solutions](#challenges-and-solutions)
- [Prerequisites](#frontend-prerequisites)
- [Installation](#frontend-installation)
- [Getting started](#getting-started)
- [Application authentication](#application-authentication)
- [Application architecture & patterns](#application-architecture--patterns)
- [User guide](#user-guide)
- [Frontend Testing strategy](#frontend-testing-strategy)
- [The backend application](https://github.com/eclipse-tractusx/traceability-foss/#the-backend-application)
- [Prerequisites](https://github.com/eclipse-tractusx/traceability-foss/#backend-prerequisites)
- [Installation](https://github.com/eclipse-tractusx/traceability-foss/#backend-installation)
- [The backend application](#the-backend-application)
- [Prerequisites](#backend-prerequisites)
- [Installation](#backend-installation)
- [Backend Testing strategy](#backend-testing-strategy)
- [API documentation](https://github.com/eclipse-tractusx/traceability-foss/#api-documentation)
- [Container Image](https://github.com/eclipse-tractusx/traceability-foss/#container-image)
- [Licenses](https://github.com/eclipse-tractusx/traceability-foss/#licenses)
- [API documentation](#api-documentation)
- [Container Image](#container-image)
- [Licenses](#licenses)
- [Notice for Docker image](#notice-for-docker-image)
- [Contact](#contact)

## Introduction

### Vision and Mission Statement
Trace-X empowers all companies from SMEs to large OEMs to participate in parts traceability with an Open-Source solution.

The Open-Source Traceability application is developed within the Catena-X project and enables all companies to participate in Parts Traceability.
Trace-X offers capabilities to ingest data for serialized parts and batches as well as their child components.  Within CX, we strive to establish a standardized, data-sovereign and interoperable exchange of traceability data along the value creation chain.
The Open-Source Traceability application is developed within the Catena-X project and enables all companies to participate in Parts Traceability.
Trace-X offers capabilities to ingest data for serialized parts and batches as well as their child components. Within CX, we strive to establish a standardized, data-sovereign and interoperable exchange of traceability data along the value creation chain.

The application gives an overview of the supplier network and the supply chain. A high level of transparency across the supplier network enables faster intervention based on recorded events in the supply chain. Additionally, automated massages regarding Quality related incidents and a tool for inspecting the supply chain helps companies in these fast-moving times.

Expand All @@ -52,37 +57,47 @@ All this saves' costs by seamlessly tracking parts as well as creates trust thro
### Trace-X Feature list
Trace-X as the Open-Source solution for Parts Traceability offers the following functionalities:

* List and view manufactured parts based on BoM AsBuild
* List and view manufactured parts based on BoM AsBuilt
* List and view planned parts based on BoM AsPlanned
* Filter and Search functionality on part views 
* Filter and search functionality on part views
* Show detailed information on manufactured parts
** Asset Administration Shell description
** Submodel description such as SerialPartTypization, AssemblyPartRelationship, Batch
* List and view Supplier parts based on BoM As Build
** List of Supplier parts based on AssemblyPartRelationship Aspect
* Asset Administration Shell description
* Submodel description such as
* SerialPart
* SingleLevelBomAsBuilt
* SingleLevelUsageAsBuilt
* Batch
* JustInSequence
* PartAsPlanned
* SingleLevelBomAsPlanned
* SingleLevelUsageAsPlanned
* List and view Supplier parts based on BoM As Built
* List of Supplier parts based on SingleLevelBomAsBuilt/SingleLevelUsageAsBuilt Aspect
* View parts and parts relations in parts tree
* Send and receive quality investigations along the supply chain
* Quality Investigations (Company to Supplier)
* Quality Alerts (Company to Customers)

## How to contribute

A detailed guide on how to contribute can be found [here](https://github.com/eclipse-tractusx/traceability-foss/blob/main/CONTRIBUTING.md).
A detailed guide on how to contribute can be found [here](CONTRIBUTING.md).

## Releasing
Here is our [Releasing guide](https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/RELEASE.md).
Here is our [Releasing Guide](docs/RELEASE.md).

## The frontend application
## Frontend Application

This application serves as a user entry point to the Catena-X network.

It's written in Typescript based on the `Angular` framework.
It's written in Typescript based on the [Angular](https://angular.dev/) framework.
We decided on using Angular because of two important aspects.
Firstly, Angular comes with `strict guidelines`, which makes it harder to start working on for new developers, but for established developers it is `easy to start working with`.
Secondly, Angular `scales` perfectly in the long run. Because of the restricted possibilities and stricted guidelines it is hard to implement multiple solutions for the same problem. e.g. Storing data or routing.
Secondly, Angular `scales` perfectly in the long run. Because of the restricted possibilities and strict guidelines it is hard to implement multiple solutions for the same problem. e.g. Storing data or routing.
With that in mind it made sense it chose Angular for an `open source` project.

Source files are exposed statically through the NGINX web server.

### Challenges and solutions
### Challenges and Solutions

"Visualisation of traceability" is one of our most important feature, but once was one of our biggest problems.
We wanted to achieve something that is `visually pleasing`, is `easy to use` and `performs` very good in a `browser application`.
Expand All @@ -98,44 +113,44 @@ Because it uses SVGs, we knew it will perform great. And we are able to have pin

### Frontend Installation

* see [Installation guide](https://github.com/eclipse-tractusx/traceability-foss/blob/main/frontend/INSTALL.md)
* see [Installation guide](frontend/INSTALL.md)

### Getting started

Clone the source locally:

```sh
```bash
$ git clone git@github.com:eclipse-tractusx/traceability-foss.git
$ cd traceability-foss/frontend
```

Install prerequisites:
1. install [node.js](https://nodejs.org/en/download/package-manager)
```sh
```bash
$ npm install --global yarn
$ npm install -g @angular/cli
$ yarn install
```

Start application with``yarn start`` and navigate to ``http://localhost:4200``.
Start application with ``yarn start`` and navigate to ``http://localhost:4200``.

### Application authentication
### Application Authentication

Please find [here](https://github.com/eclipse-tractusx/traceability-foss/blob/main/frontend/AUTHENTICATION.md) some important information about the app authentication.
Please find [here](frontend/AUTHENTICATION.md) some important information about the app authentication.

### Application architecture & patterns
### Application Architecture & Patterns

This [architecture](https://github.com/eclipse-tractusx/traceability-foss/blob/main/frontend/ARCHITECTURE.md) gives you a roadmap and best practices to follow when building an application
This [architecture](frontend/ARCHITECTURE.md) gives you a roadmap and best practices to follow when building an application
so that you end up with a well-structured app.

### User guide
### User Guide

A detailed [explanation](https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/src/docs/user/user-manual.adoc) of how to use the application.
A detailed [explanation](docs/user/user-manual.adoc) of how to use the application.

### Frontend Testing Strategy
See [TESTING](frontend/TESTING.md).

## The backend application
## Backend Application

### Backend Prerequisites

Expand All @@ -144,26 +159,26 @@ See [TESTING](frontend/TESTING.md).

### Backend Installation

* see [Installation guide](https://github.com/eclipse-tractusx/traceability-foss/blob/main/tx-backend/INSTALL.md)
* see [Installation guide](tx-backend/INSTALL.md)

### Backend Testing Strategy
See [TESTING](tx-backend/TESTING.md).

## API documentation
## API Documentation
The project follows [OpenAPI Specification](https://swagger.io/specification/) in order to document implemented REST Endpoints. The documentation can be found under [/openapi directory](https://github.com/eclipse-tractusx/traceability-foss/blob/main/tx-backend/openapi/traceability-foss-backend.json)
or can be viewed in the Swagger UI accessing the url: `{projectBasePath}/api/swagger-ui/index.html`

## Licenses

* [Apache License 2.0](https://github.com/eclipse-tractusx/traceability-foss/blob/main/LICENSE)
* [CC BY 4.0 License](https://github.com/eclipse-tractusx/traceability-foss/blob/main/LICENSE_non-code)
* [Apache License 2.0](LICENSE)
* [CC BY 4.0 License](LICENSE_non-code)

## Notice for Docker image
## Notice for Docker Image

Below you can find the information regarding Docker Notice for this application.

- [Traceability Backend Docker Notice](https://github.com/eclipse-tractusx/traceability-foss/blob/main/DOCKER_NOTICE.md)
- [Traceability Frontend Docker Notice](https://github.com/eclipse-tractusx/traceability-foss/blob/main/frontend/DOCKER_NOTICE.md)
- [Traceability Backend Docker Notice](DOCKER_NOTICE.md)
- [Traceability Frontend Docker Notice](DOCKER_NOTICE.md)

## Contact

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Source: https://miro.com/app/board/uXjVO5JVoho=/?moveToWidget=345876457235304953
- [ ] User selection of Viewer Instance is stored in User Settings. Last selected Viewer Instance will be used for next semantic model selection.
- [ ] User selected semantic model in table is highlighted in dark grey color

![DetailView_With_Code_Viewer_Active.png](DetailView_With_Code_Viewer_Active.png)
![DetailView_With_Code_Viewer_Active](DetailView_With_Code_Viewer_Active.svg)


### Json Code Raw Viewer
Expand All @@ -103,7 +103,7 @@ Source: https://miro.com/app/board/uXjVO5JVoho=/?moveToWidget=345876457235304953
- Vertical scrollbar
- Extend Viewer Panel is extendable to full-screen

![Detail_View_Json_Code_Viewer](Detail_View_Json_Code_Viewer.png)
![Detail_View_Json_Code_Viewer](Detail_View_Json_Code_Viewer.svg)

### Json Tree Viewer

Expand All @@ -114,18 +114,18 @@ Json Tree Viewer is the visualization of a JSON structure in a hierarchical tree
- Code Highlighting
- Line Numbering
- Extend Viewer Panel is extendable to full-screen
![Detail_View_Json_Tree_Viewer](Detail_View_Json_Tree_Viewer.png)
![Detail_View_Json_Tree_Viewer](Detail_View_Json_Tree_Viewer.svg)

### Json Graph Viewer
- Json Tree Viewer
- Json is visualized in graph view
- Code Highlighting
- Extend Viewer Panel is extendable to full-screen
![Detail_View_Json_Graph_Viewer](Detail_View_Json_Graph_Viewer.png)
![Detail_View_Json_Graph_Viewer](Detail_View_Json_Graph_Viewer.svg)


## Viewer in full-screen mode
![Viewer Full Screen](Viewer_Full_screen_mode.png)
![Viewer Full Screen](Viewer_Full_screen_mode.svg)
- Any viewer instance could be extended to full-screen mode
- Full-screen mode is disabled via X button on the right upper side.
- After closing, full-screen former detail view is shown
Expand All @@ -135,7 +135,7 @@ Json Tree Viewer is the visualization of a JSON structure in a hierarchical tree
- Viewer show initial message Semantic model cannot be displayed.
- Standard error message: Semantic model cannot be displayed. With detailed user readable message

![Error View](Error_View.png)
![Error View](Error_View.svg)

# Glossary

Expand Down
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading