Skip to content

Commit

Permalink
doc: draft-contributing.md-update
Browse files Browse the repository at this point in the history
  • Loading branch information
BeckerStS committed Sep 3, 2024
1 parent 4e96b1f commit c76d9f5
Show file tree
Hide file tree
Showing 5 changed files with 109 additions and 25 deletions.
134 changes: 109 additions & 25 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,57 @@
# Contributing to SIMATIC AX Community
# Contributing to the SIMATIC AX Community

Welcome, and thank you for your interest in the SIMATIC AX Community
Welcome, and thank you for your interest in the SIMATIC AX Community.

There are many ways in which you can contribute, beyond writing code. The goal of this document is to provide an overview of how you can get involved.
There are many ways to contribute beyond writing code. The goal of this document is to provide an overview of how you can get involved.

## Discussions
Discussions are project wide and function like a typical forum.
> Everything that is mentioned here is intended as a **supplement** to the official [GitHub Community guidelines](https://docs.github.com/en/site-policy/github-terms/github-community-guidelines). Please read them carefully.
Here you can post:
**Table of content:**

- questions
- answers
- feedback
- (topic) suggestions
- etc
- [Contributing to the SIMATIC AX Community](#contributing-to-the-simatic-ax-community)
- [via `Discussions`](#via-discussions)
- [via `Issues`](#via-issues)
- [via `Pull-Requests`](#via-pull-requests)
- [Contributor License Agreement (CLA)](#contributor-license-agreement-cla)
- [via `New Repositories`](#via-new-repositories)
- [Creating Application Examples](#creating-application-examples)
- [Creating Libraries](#creating-libraries)
- [Release Process](#release-process)
- [Thank You](#thank-you)

about the product or community.
## via `Discussions`

Please use [SIMATIC AX Discussions](https://github.com/orgs/simatic-ax/discussions)
![dis1](img/discussions1.png)

It should look like this:
Link to our [Community Discussions](https://github.com/orgs/simatic-ax/discussions)

1. Open GitHub discussion
![dis1](img/dsicussions1.png)
Discussions are "simatic-ax" organization wide and function like a typical community forum.

2. Select a category
Simply select one of the available `categories` in the navigation-bar ("General"/ "Ideas"/ "Q&A"/ "Show and tell") and start submitting or discovering :

![dis2](img/dsicussions2.png)
- questions
- answers
- feedback
- (topic) suggestions
- ...

> While doing so we kindly ask you to stick to **topics related to excisting or possible community-contents**.
3. Submit your question, feedback or idea
Unfortunatly this is not the official space for requesting access to the actual SIMATIC AX product, reporting product related -bugs -ideas -suggestions or simply ask for technical support.
Therefore use the official SIMATIC AX feedback-channels or contact your regional SIEMENS sales representatives.

## Reporting issues
> Please be polite and make sure to mark someone’s comment as an answer, if it helps you resolve your question — they deserve the credit! 💕
## via `Issues`
Issues are repository specific and like bug reports for the content of the repository.

- Is your library or application example not working as described?
- Do you have a feature request or an idea?

Feel free to report an issue direct in the related repository.
Feel free to report an issue directly in the related repository.

1. Select the related repository
![iss1](issues1.png)
![iss1](img/issues1.png)

2. Create a new issue

Expand All @@ -50,6 +62,78 @@ Feel free to report an issue direct in the related repository.
![iss3](img/issues3.png)


## Thank You

Your contributions to this open source project - large or small - let´s us create better automation solutions - together! Thank you for beeing a essential part of this journey.
## via `Pull-Requests`

If you want to contribute directly to the code, you can do so via a pull request. Please follow these steps:

1. **Fork this repository** and clone it locally.
2. **Create a new branch** for your work (e.g., `feature-xyz` or `bugfix-abc`).
3. **Make your changes** and commit them.
4. **Push your branch** to your fork.
5. **Create a pull request** from your branch to the main repository.

### Contributor License Agreement (CLA)

For a pull request, it is necessary to digitally sign a Contributor License Agreement (CLA). This ensures that your contributions can be legally integrated into the project.

## via `New Repositories`

In the SIMATIC AX GitHub Community, the following source content can be published:

- **Application Examples**
- **Example Libraries**
- **Tutorials** (incl. Tipps & Tricks)
- **Code Snippets**
- **Contributed Apax commands**
- **Project Templates**
- **Tools and Extensions** (such as linters,generators, etc.)

For new GitHub projects, it is necessary to conduct an assessment. This includes:

- **Open Source Software (OSS) Assessment**
- **Export Control Classification (ECC)**
- **Patent Clearing**

To conduct these assessments, the administrators of the GitHub community need to be informed. It would be ideal if you could handle these steps directly yourself. For further information and support don't hesitate to contact the administrators.


### Creating Application Examples

1. **Use the "app" template**:
```sh
apax create @simatic-ax/app --registry https://npm.pkg.github.com
```
2. **Follow the ST Style Guide** when implementing your code.
3. **Ensure that license information and code owners** are included. These and predefined GitHub workflows are already included in the template.

### Creating Libraries

1. **Use the "library" template**:
```sh
apax create @simatic-ax/library --registry https://npm.pkg.github.com
```
2. **Follow the ST Style Guide** when implementing your library.
3. **Ensure that license information and code owners** are included. These and predefined GitHub workflows are already included in the template.

> Note
> Using the templates is not mandatory, but it offers some advantages, such as already integrated license information, workflows, and code owners. This can save you a lot of work. However, you can also handle these things yourself if you prefer.

### Release Process

To release something, GitHub Release is used. Here is the process for how a release should be made:

1. **Ensure that all changes** are integrated into the `main` branch and have passed quality assurance checks.
2. **Create a tag** in the format `X.Y.Z`, where `X`, `Y`, and `Z` represent the version number.
3. **Go to the GitHub page of the repository** and navigate to the "Releases" section.
4. **Click on "Draft a new release"**.
5. **Select the created tag** and add a description of the release.
6. **Publish the release** by clicking on "Publish release".

# Thank You

Your contributions to this open source project - large or small - let´s us create better automation solutions - together!

A big `THANK YOU` for beeing awesomne and an essential part of this journey. 💕

See you out there!
Your friendly SIMATIC AX neighborhood.
Binary file added .github/img/discussions1.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 removed .github/img/dsicussions1.png
Binary file not shown.
Binary file removed .github/img/dsicussions2.png
Binary file not shown.
File renamed without changes

0 comments on commit c76d9f5

Please sign in to comment.