Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
bbbbe67
Add CONTRIBUTING.md file
WillSams Feb 7, 2025
9d4b9b3
Lint README.md
WillSams Feb 7, 2025
c6fa84f
Add initial COMMITTERS.csv file
WillSams Feb 7, 2025
fdbe999
updated git base url, changed from soy to hyphae
BillBensing Jun 5, 2022
b9a553f
Add CODE_OF_CONDUCT.md
WillSams Feb 7, 2025
56c1f7c
Update CODE_OF_CONDUCT.md
WillSams Feb 7, 2025
f4393fc
Add initial GOVERNANCE.md
WillSams Feb 7, 2025
eba240f
Merge pull request #18 from hyphae/12-doc/add-governance-markdown
axmsoftware Feb 10, 2025
088394c
Merge pull request #17 from hyphae/11-doc/add-code_of_conduct-markdown
axmsoftware Feb 10, 2025
06d55ee
Merge pull request #15 from hyphae/8-chore/add-contributing-file
axmsoftware Feb 10, 2025
70a5a9b
Merge pull request #16 from hyphae/10-doc/add-committers-csv
axmsoftware Feb 10, 2025
a7ae489
Create scorecard.yml
axmsoftware Mar 9, 2025
8102aff
Update README.md Technology spelling
Souradip121 Mar 18, 2025
37181e0
Update Makefile
Venkata-Sai-Vishwanath-robo Mar 23, 2025
005eb61
Merge pull request #49 from hyphae/Venkata-Sai-Vishwanath-robo-patch-1
Venkata-Sai-Vishwanath-robo Mar 24, 2025
5eba244
Merge pull request #47 from Souradip121/add-license-1
axmsoftware Jul 27, 2025
57912f9
Update .github/workflows/scorecard.yml
subhramit Jul 29, 2025
19c52f2
docs: reorganize README.md to follow LF Energy standards Signed-off-b…
AkarshSahlot Aug 26, 2025
4cd8cea
Merge pull request #1 from AkarshSahlot/AkarshSahlot-patch-1
AkarshSahlot Aug 26, 2025
9ce1cb5
Merge pull request #37 from hyphae/axmsoftware-patch-2
axmsoftware Sep 2, 2025
942aa69
Merge pull request #54 from AkarshSahlot/add-license-1
axmsoftware Sep 3, 2025
4063d19
Updated README.md and removed broken links
AkarshSahlot Sep 7, 2025
31746ce
Merge pull request #57 from AkarshSahlot/patch-1
aidan-barnes-axm Sep 17, 2025
cc73f53
Update Scorecard workflow dependencies and permissions
axmsoftware Dec 22, 2025
39732d8
Merge pull request #70 from hyphae/axmsoftware-patch-4
axmsoftware Dec 22, 2025
abc2444
Modify scorecard workflow for SARIF retention and version
axmsoftware Dec 22, 2025
a256103
Merge pull request #72 from hyphae/axmsoftware-patch-4-1
axmsoftware Dec 22, 2025
74d45e4
Update README to add OpenSSF Scorecard Badge
axmsoftware Dec 22, 2025
bde0bda
Merge pull request #73 from hyphae/axmsoftware-patch-4-2
axmsoftware Dec 22, 2025
c0535c9
docs: add brief note on Java code quality tooling
goyalpalak18 Jan 25, 2026
7cace7e
Fix terminal launch failure on KDE/XFCE Linux desktops
goyalpalak18 Jan 29, 2026
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
79 changes: 79 additions & 0 deletions .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# This workflow uses actions that are not certified by GitHub. They are provided
# by a third-party and are governed by separate terms of service, privacy
# policy, and support documentation.

name: Scorecard supply-chain security
on:
# For Branch-Protection check. Only the default branch is supported. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
branch_protection_rule:
# To guarantee Maintained check is occasionally updated. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
schedule:
- cron: '36 16 * * 3'
push:
branches: [ "add-license-1" ]

# Declare default permissions as read only.
permissions:
contents: read

jobs:
analysis:
name: Scorecard analysis
runs-on: ubuntu-latest
# `publish_results: true` only works when run from the default branch. conditional can be removed if disabled.
if: github.event.repository.default_branch == github.ref_name || github.event_name == 'pull_request'
permissions:
# Needed to upload the results to code-scanning dashboard.
security-events: write
# Needed to publish results and get a badge (see publish_results below).
id-token: write
# Uncomment the permissions below if installing in a private repository.
# contents: read
# actions: read

steps:
- name: "Checkout code"
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false

- name: "Run analysis"
uses: ossf/scorecard-action@f49aabe0b5af0936a0987cfb85d86b75731b0186 # v2.4.1
with:
results_file: results.sarif
results_format: sarif
# (Optional) "write" PAT token. Uncomment the `repo_token` line below if:
# - you want to enable the Branch-Protection check on a *public* repository, or
# - you are installing Scorecard on a *private* repository
# To create the PAT, follow the steps in https://github.com/ossf/scorecard-action?tab=readme-ov-file#authentication-with-fine-grained-pat-optional.
# repo_token: ${{ secrets.SCORECARD_TOKEN }}

# Public repositories:
# - Publish results to OpenSSF REST API for easy access by consumers
# - Allows the repository to include the Scorecard badge.
# - See https://github.com/ossf/scorecard-action#publishing-results.
# For private repositories:
# - `publish_results` will always be set to `false`, regardless
# of the value entered here.
publish_results: true

# (Optional) Uncomment file_mode if you have a .gitattributes with files marked export-ignore
# file_mode: git

# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: "Upload artifact"
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
with:
name: SARIF file
path: results.sarif
retention-days: 5

# Upload the results to GitHub's code scanning dashboard (optional).
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: results.sarif
2 changes: 2 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
All participants agree to abide by the [Code of Conduct](https://lfprojects.org/policies/code-of-conduct/). Please contact [conduct@lfenergy.org](conduct@lfenergy.org) to report any
violations or concerns.
3 changes: 3 additions & 0 deletions COMMITERS.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Name, Email, Github ID
xxx xxxx, xxx@axmsoftware.com, axmsoftware
Will Sams, will@samswebs.com, willsams
107 changes: 107 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# Contributing to APIS

Thank you for your interest in contributing to APIS! We welcome contributions from the community to help improve and grow this project.

## How to Contribute

### Reporting Issues

If you encounter any bugs, have feature requests, or want to suggest improvements, please open an issue in the relevant sub-repository under the [Hyphae organization](https://github.com/hyphae). When filing an issue, please provide:

- A clear title and description
- Steps to reproduce (if applicable)
- Expected and actual behavior
- Any relevant logs or screenshots

### Contributing Code

The main repository (APIS) does not contain code directly but serves as the build orchestrator for the following sub-repositories:

- [apis-bom](https://github.com/hyphae/apis-bom)
- [apis-ccc](https://github.com/hyphae/apis-ccc)
- [apis-common](https://github.com/hyphae/apis-common)
- [apis-emulator](https://github.com/hyphae/apis-emulator)
- [apis-log](https://github.com/hyphae/apis-log)
- [apis-main](https://github.com/hyphae/apis-main)
- [apis-main_controller](https://github.com/hyphae/apis-main_controller)
- [apis-service_center](https://github.com/hyphae/apis-service_center)
- [apis-tester](https://github.com/hyphae/apis-tester)
- [apis-web](https://github.com/hyphae/apis-web)

Each of these sub-repositories may have different contribution requirements based on the technology stack (Java, Groovy or Python). Please refer to their respective README.md files.

#### 1. Fork the Relevant Repository

Start by forking and cloning the repository you wish to contribute to.

```bash
# Fork the repository and clone it locally. Example for apis-common
git clone https://github.com/hyphae/apis-common.git
cd apis-common
```

#### 2. Create a Branch

Create a new branch for your work:

```bash
git checkout -b feature-branch
```

#### 3. Implement Changes

Make your changes following the coding standards of the project. Ensure your code is well-documented and includes tests where applicable.

#### 4. Run Tests

Before submitting your changes, make sure to test them:

```bash
mvn test # Java projects
```

#### 5. Commit Changes

Follow the project’s commit message conventions. A good commit message format is:

```text
[Type] Short description

Detailed explanation of the changes (if necessary)
```

Examples:

```text
[Fix] Corrected validation logic for job assignments
[Feature] Added new user role permissions
```

#### 6. Submit a Pull Request (PR)

Push your changes to your fork and create a pull request against the `main` branch of the repository. Provide a detailed explanation of the changes in the PR description.

### Code Review Process

All contributions go through a code review process:

1. A maintainer will review your PR and may request changes.
2. Once approved, your changes will be merged into the main branch.
3. If necessary, your changes will be included in the next release.

### Contribution Guidelines

- Follow the project’s coding style and conventions.
- Ensure changes do not introduce security vulnerabilities.
- Write clear and descriptive commit messages.
- Be respectful and constructive in discussions and code reviews.

### Community Contributions

In addition to code, you can contribute by:

- Writing and improving documentation.
- Helping answer questions in discussions and issues.
- Reporting bugs and suggesting features.

Thank you for contributing to APIS! 🚀
65 changes: 65 additions & 0 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# APIS Project Governance Policy

## Overview

This project aims to be governed in a transparent, accessible way for the benefit of the community. All participation in this project is open and not bound to corporate affiliation. Participants are bound to the project's [Code of Conduct](CODE_OF_CONDUCT.md).

## Project Roles

### Contributor

The contributor role is the starting role for anyone participating in the
project and wishing to contribute code.

#### Process for Becoming a Contributor

* Review the [Contribution Guidelines](CONTRIBUTING.md) to ensure your contribution is inline with the project's coding and styling guidelines.
* Submit your code as a PR with the appropriate DCO sign-off.
* Have your submission approved by the committer(s) and merged into the codebase.

### Committer

The committer role enables the contributor to commit code directly to the repository, but also comes with the responsibility of being a responsible leader in the community.

#### Process for Becoming a Committer

* Show your experience with the codebase through contributions and engagement on the community channels.
* Request to become a committer. To do this, create a new pull request that adds your name and details to the [Committers File](COMMITTERS.csv) and request existing committers to approve.
* After the majority of committers approve you, merge in the PR. Be sure to tag the person managing the GitHub permissions to update the committers team in GitHub.

#### Committer Responsibilities

* Monitor project communication channels.
* Triage GitHub issues and perform pull request reviews for other committers and the community.
* Ensure that ongoing PRs are moving forward at the right pace or closing them.
* Dedicate at least 25% of their time (~1.25 business days per week) to the project.

#### When Does a Committer Lose Committer Status?

If a committer is no longer interested or cannot perform the committer duties listed above, they should volunteer to be moved to emeritus status. In extreme cases, this can also occur by a vote of the committers per the voting process below.

### Technical Steering Committee (TSC)

The Technical Steering Committee (TSC) is responsible for the overall project health and direction, coordination of activities, and working with other projects and committees as needed for the continued growth of the project.

See [TSC Readme](tsc/README.md) for details.

## Release Process

Project releases will occur on a scheduled basis as agreed to by the committers. See [RELEASE.md](RELEASE.md) for details.

## Conflict Resolution and Voting

In general, we prefer that technical issues and committer membership are amicably worked out between the persons involved. If a dispute cannot be decided independently, the committers can be called in to decide an issue. If the committers themselves cannot decide an issue, the issue will be resolved by voting. The voting process is a simple majority in which each committer receives one vote.

## Communication

This project, just like all of open source, is a global community. In addition to the [Code of Conduct](CODE_OF_CONDUCT.md), this project will:

* Keep all communication on open channels (mailing list, forums, chat).
* Be respectful of time and language differences between community members (such as scheduling meetings, email/issue responsiveness, etc.).
* Ensure tools are able to be used by community members regardless of their region.

If you have concerns about communication challenges for this project, please contact the committers.

Thank you for being part of the APIS community and helping maintain a well-governed, transparent project!
30 changes: 30 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,36 @@

GIT_BASE_URL=https://github.com/hyphae

.PHONY: help
help:
@printf "\nClone Repositories:\n"
@printf " make apis-bom - Clone APIS BOM repository\n"
@printf " make apis-common - Clone APIS Common repository\n"
@printf " make apis-main - Clone APIS Main repository\n"
@printf " make apis-ccc - Clone APIS CCC repository\n"
@printf " make apis-log - Clone APIS Log repository\n"
@printf " make apis-web - Clone APIS Web repository\n"
@printf " make apis-emulator - Clone APIS Emulator repository\n"
@printf " make apis-main_controller - Clone APIS Main Controller repository\n"
@printf " make apis-service_center - Clone APIS Service Center repository\n"
@printf " make apis-tester - Clone APIS Tester repository\n\n"
@printf "Build Targets:\n"
@printf " make build-apis-* - Build a specific APIS module\n"
@printf " make build - Build all APIS modules\n\n"
@printf "Update Repositories:\n"
@printf " make update-apis-* - Update a specific APIS repository\n"
@printf " make update - Update all APIS repositories\n\n"
@printf "Clean Targets:\n"
@printf " make clean-apis-* - Clean a specific APIS module\n"
@printf " make clean - Clean all APIS modules\n\n"
@printf "Run Targets:\n"
@printf " make run-apis-* - Run a specific APIS module\n"
@printf " make run-mongodb - Run MongoDB service\n"
@printf " make run - Run all APIS services\n\n"
@printf "Stop Targets:\n"
@printf " make stop-apis-* - Stop a specific APIS module\n"
@printf " make stop-mongodb - Stop MongoDB service\n"
@printf " make stop - Stop all APIS services\n"

apis-bom:
git clone $(GIT_BASE_URL)/apis-bom.git
Expand Down
Loading