Skip to content

gs-gs/pyx-identity-resolver

 
 

Repository files navigation

Pyx Identity Resolver

This software offers a flexible solution for managing and resolving links associated with various identifiers like GTINs (Global Trade Item Numbers).

It enables identity registry operators and identifier owners to register links to more information about a product, while allowing value chain actors to resolve and access information linked to these identifiers across various identifier schemes, enhancing traceability and data accessibility.

Core Functionality

  • Identifier scheme management (registering and configuring permitted identifier schemes for link registration)
  • Link registration and management (allowing registry operators or identifier owners to add and update links to product information)
  • Link resolution (enabling value chain actors to access additional information linked to identifiers across various identifier schemes)

Standards Compliance

Access Control

  • Anonymous users can resolve link information without authentication
  • Authenticated users via API endpoints can:
    • Register and manage identifier schemes
    • Register and manage supported link types for identifier schemes
    • Register and manage links for specific identifiers within permitted identifier schemes

Quick Start

To quickly set up and run the Identity Resolver using the docker-compose.yaml file, execute the following command:

docker compose up -d

For more detailed setup and configuration options, refer to the documentation site.

Contributing

We use Semantic Line Breaks in our documentation. Please follow this convention when contributing to the project.

Release and Publishing

This project uses two primary workflows:

  1. Release Tagging: Creates version tags based on app/package.json.
  2. Package: Builds and pushes Docker images to the GitHub Container Registry.

We follow Semantic Versioning with the format vMAJOR.MINOR.PATCH.

For more detailed information, please refer to the documentation.

Release Guide

To release a new version, ensure we have the version.json file updated with the new version number. Then, create a new release tag with the following steps:

  1. Create a new release branch from next with the version number as the branch name.
  2. Update the version.json file with the new version number.
  3. Generate new documentation version using the release script
cd documentation
yarn release:doc
  1. Check API documentation and update if necessary.
  2. Commit the changes and push the branch.
  3. Create a pull request from the release branch to main.
  4. Merge the pull request.
  5. Create a new release tag with the version number.
  6. Push the tag to the repository.

(*) With the version.json file, it contains the version number in the following format:

{
  "version": "MAJOR.MINOR.PATCH",
  "apiVersion": "MAJOR.MINOR.PATCH",
  "docVersion": "MAJOR.MINOR.PATCH",
  "dependencies": {}
}

We need to change manually the version, apiVersion, and docVersion fields.

About

FOSS implementation of ISO1975 link resolver

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.7%
  • Other 0.3%