{"id":15022523,"url":"https://github.com/fugerit-org/fj-doc","last_synced_at":"2026-02-04T23:07:40.027Z","repository":{"id":46906807,"uuid":"219955762","full_name":"fugerit-org/fj-doc","owner":"fugerit-org","description":"Venus - Fugerit Document Generation Framework (fj-doc)","archived":false,"fork":false,"pushed_at":"2025-10-21T10:59:50.000Z","size":9560,"stargazers_count":25,"open_issues_count":11,"forks_count":6,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-10-21T12:25:04.579Z","etag":null,"topics":["apache-fop","apache-poi","csv","csv-generator","excel","excel-generation","freemarker","html","html-generation","java","markdown","markdown-generator","maven","maven-pom","opencsv","pdf","pdf-generation","quarkus","xls","xlsx"],"latest_commit_sha":null,"homepage":"https://venusdocs.fugerit.org","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fugerit-org.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-11-06T09:10:27.000Z","updated_at":"2025-10-21T10:20:11.000Z","dependencies_parsed_at":"2023-10-21T13:33:18.344Z","dependency_job_id":"9729ea07-ecd2-4736-a574-8daa17b8a0e7","html_url":"https://github.com/fugerit-org/fj-doc","commit_stats":{"total_commits":1218,"total_committers":8,"mean_commits":152.25,"dds":"0.10344827586206895","last_synced_commit":"d85e6baffaeae257162ba1972b557cf68feea9ce"},"previous_names":[],"tags_count":146,"template":false,"template_full_name":null,"purl":"pkg:github/fugerit-org/fj-doc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fugerit-org%2Ffj-doc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fugerit-org%2Ffj-doc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fugerit-org%2Ffj-doc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fugerit-org%2Ffj-doc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fugerit-org","download_url":"https://codeload.github.com/fugerit-org/fj-doc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fugerit-org%2Ffj-doc/sbom","scorecard":{"id":413211,"data":{"date":"2025-08-11","repo":{"name":"github.com/fugerit-org/fj-doc","commit":"f063dad55b028c0ff5c383fcf9b914868bbf793b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.6,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":3,"reason":"Found 5/15 approved changesets -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 14 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql-analysis.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql-analysis.yml:30","Info: topLevel 'contents' permission set to 'read': .github/workflows/asciidoc_2_gh_pages.yml:14","Warn: no topLevel permission defined: .github/workflows/build_fj-doc-native-quarkus_test.yml:1","Warn: no topLevel permission defined: .github/workflows/build_maven_compatibility.yml:1","Warn: no topLevel permission defined: .github/workflows/build_maven_package.yml:1","Warn: no topLevel permission defined: .github/workflows/codeql-analysis.yml:1","Warn: no topLevel permission defined: .github/workflows/deploy_maven_package.yml:1","Warn: no topLevel permission defined: .github/workflows/docker_publish.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":1,"reason":"branch protection is not maximal on development and all release branches","details":["Warn: branch protection not enabled for branch 'branch-deploy'","Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Info: 'branch protection settings apply to administrators' is required to merge on branch 'main'","Warn: branch 'main' does not require approvers","Warn: codeowners review is not required on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Warn: PRs are not required to make changes on branch 'main'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy_maven_package.yml:20"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (20) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:74: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:81: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/asciidoc_2_gh_pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_fj-doc-native-quarkus_test.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_fj-doc-native-quarkus_test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_fj-doc-native-quarkus_test.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_fj-doc-native-quarkus_test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_fj-doc-native-quarkus_test.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_fj-doc-native-quarkus_test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:65: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:82: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_maven_compatibility.yml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_compatibility.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_maven_package.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/build_maven_package.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/codeql-analysis.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/codeql-analysis.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/codeql-analysis.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/codeql-analysis.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:82: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/codeql-analysis.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy_maven_package.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/deploy_maven_package.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy_maven_package.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/deploy_maven_package.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker_publish.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/fugerit-org/fj-doc/docker_publish.yml/main?enable=pin","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/openliberty/Dockerfile:2: pin your Docker image by updating icr.io/appcafe/open-liberty:kernel-slim-java21-openj9-ubi-minimal to icr.io/appcafe/open-liberty:kernel-slim-java21-openj9-ubi-minimal@sha256:bf39dcdba22234de5149c5ccbd94ea3b3e1a6b64c35a20cfe259b7b3a83366e3","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-2/src/main/docker/Dockerfile.jvm:80: pin your Docker image by updating registry.access.redhat.com/ubi8/openjdk-21:1.20 to registry.access.redhat.com/ubi8/openjdk-21:1.20@sha256:28eb6abdec56ccee38f57c1c0a4acd6e87e569d97269d56b8523b65d700da9f1","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-2/src/main/docker/Dockerfile.legacy-jar:80: pin your Docker image by updating registry.access.redhat.com/ubi8/openjdk-21:1.20 to registry.access.redhat.com/ubi8/openjdk-21:1.20@sha256:28eb6abdec56ccee38f57c1c0a4acd6e87e569d97269d56b8523b65d700da9f1","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-2/src/main/docker/Dockerfile.native:17: pin your Docker image by updating registry.access.redhat.com/ubi8/ubi-minimal:8.10 to registry.access.redhat.com/ubi8/ubi-minimal:8.10@sha256:395dec18e7ba913157b1ecf2fd696d701ef834fd77054fffdb7eb678f864eb9e","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-2/src/main/docker/Dockerfile.native-micro:20: pin your Docker image by updating quay.io/quarkus/quarkus-micro-image:2.0 to quay.io/quarkus/quarkus-micro-image:2.0@sha256:11ff6338afaba7d6543e68e65bdf8d750d76bb4fc3ba96c9f3918b368196c29a","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle-kts/src/main/docker/Dockerfile.jvm:80: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle-kts/src/main/docker/Dockerfile.legacy-jar:80: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle-kts/src/main/docker/Dockerfile.native:17: pin your Docker image by updating registry.access.redhat.com/ubi9/ubi-minimal:9.5 to registry.access.redhat.com/ubi9/ubi-minimal:9.5@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle-kts/src/main/docker/Dockerfile.native-micro:20: pin your Docker image by updating quay.io/quarkus/ubi9-quarkus-micro-image:2.0 to quay.io/quarkus/ubi9-quarkus-micro-image:2.0@sha256:c31352c4a040cbc0206b9bba28d2e7d4b61f74a79f85f76ec65d0464a072cc82","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle/src/main/docker/Dockerfile.jvm:80: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle/src/main/docker/Dockerfile.legacy-jar:80: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle/src/main/docker/Dockerfile.native:17: pin your Docker image by updating registry.access.redhat.com/ubi9/ubi-minimal:9.5 to registry.access.redhat.com/ubi9/ubi-minimal:9.5@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-gradle/src/main/docker/Dockerfile.native-micro:20: pin your Docker image by updating quay.io/quarkus/ubi9-quarkus-micro-image:2.0 to quay.io/quarkus/ubi9-quarkus-micro-image:2.0@sha256:c31352c4a040cbc0206b9bba28d2e7d4b61f74a79f85f76ec65d0464a072cc82","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-properties/src/main/docker/Dockerfile.jvm:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-properties/src/main/docker/Dockerfile.legacy-jar:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-properties/src/main/docker/Dockerfile.native:19: pin your Docker image by updating registry.access.redhat.com/ubi9/ubi-minimal:9.5 to registry.access.redhat.com/ubi9/ubi-minimal:9.5@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3-properties/src/main/docker/Dockerfile.native-micro:22: pin your Docker image by updating quay.io/quarkus/ubi9-quarkus-micro-image:2.0 to quay.io/quarkus/ubi9-quarkus-micro-image:2.0@sha256:c31352c4a040cbc0206b9bba28d2e7d4b61f74a79f85f76ec65d0464a072cc82","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3/src/main/docker/Dockerfile.jvm:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3/src/main/docker/Dockerfile.legacy-jar:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3/src/main/docker/Dockerfile.native:19: pin your Docker image by updating registry.access.redhat.com/ubi9/ubi-minimal:9.5 to registry.access.redhat.com/ubi9/ubi-minimal:9.5@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44","Warn: containerImage not pinned by hash: fj-doc-maven-plugin/src/main/resources/config/flavour/quarkus-3/src/main/docker/Dockerfile.native-micro:22: pin your Docker image by updating quay.io/quarkus/ubi9-quarkus-micro-image:2.0 to quay.io/quarkus/ubi9-quarkus-micro-image:2.0@sha256:c31352c4a040cbc0206b9bba28d2e7d4b61f74a79f85f76ec65d0464a072cc82","Warn: containerImage not pinned by hash: fj-doc-native-quarkus/src/main/docker/Dockerfile.jvm:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-native-quarkus/src/main/docker/Dockerfile.legacy-jar:81: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21:1.21 to registry.access.redhat.com/ubi9/openjdk-21:1.21@sha256:fa55b9f126da0d855e3709473e2237ad500f8d8e6a059f99b3ca10cdc2c5de58","Warn: containerImage not pinned by hash: fj-doc-native-quarkus/src/main/docker/Dockerfile.native:19: pin your Docker image by updating registry.access.redhat.com/ubi9/ubi-minimal:9.5 to registry.access.redhat.com/ubi9/ubi-minimal:9.5@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44","Warn: containerImage not pinned by hash: fj-doc-native-quarkus/src/main/docker/Dockerfile.native-micro:22: pin your Docker image by updating quay.io/quarkus/ubi9-quarkus-micro-image:2.0 to quay.io/quarkus/ubi9-quarkus-micro-image:2.0@sha256:c31352c4a040cbc0206b9bba28d2e7d4b61f74a79f85f76ec65d0464a072cc82","Warn: containerImage not pinned by hash: fj-doc-playground-quarkus/Dockerfile:14: pin your Docker image by updating registry.access.redhat.com/ubi9/openjdk-21-runtime:1.22-1.1753981256 to registry.access.redhat.com/ubi9/openjdk-21-runtime:1.22-1.1753981256@sha256:06d60e73be11d96b4cedc4bd1807e503a6196e9b01be9e4405b6b6d3b816202d","Warn: npmCommand not pinned by hash: .github/workflows/asciidoc_2_gh_pages.yml:49","Info:   0 out of  25 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of  26 containerImage dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T23:12:38.719Z","repository_id":46906807,"created_at":"2025-08-18T23:12:38.720Z","updated_at":"2025-08-18T23:12:38.720Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280695221,"owners_count":26375024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-23T02:00:06.710Z","response_time":142,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache-fop","apache-poi","csv","csv-generator","excel","excel-generation","freemarker","html","html-generation","java","markdown","markdown-generator","maven","maven-pom","opencsv","pdf","pdf-generation","quarkus","xls","xlsx"],"created_at":"2024-09-24T19:58:04.212Z","updated_at":"2025-10-24T12:31:13.347Z","avatar_url":"https://github.com/fugerit-org.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Venus - Fugerit Document Generation Framework (fj-doc)\n\n\u003e [![GitHub stars](https://img.shields.io/github/stars/fugerit-org/fj-doc?style=social)](https://github.com/fugerit-org/fj-doc)  \n\u003e ❤️ If this project helps you, please consider dropping a star — it really motivates continued development!\n\nFramework to produce documents in different output formats starting from an XML document metamodel. (options for json and yaml source models are also available)\n\n[![Keep a Changelog v1.1.0 badge](https://img.shields.io/badge/changelog-Keep%20a%20Changelog%20v1.1.0-%23E05735)](CHANGELOG.md) \n[![Maven Central](https://img.shields.io/maven-central/v/org.fugerit.java/fj-doc.svg)](https://central.sonatype.com/artifact/org.fugerit.java/fj-doc)\n[![license](https://img.shields.io/badge/License-Apache%20License%202.0-teal.svg)](https://opensource.org/licenses/Apache-2.0)\n[![code of conduct](https://img.shields.io/badge/conduct-Contributor%20Covenant-purple.svg)](https://github.com/fugerit-org/fj-universe/blob/main/CODE_OF_CONDUCT.md)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=fugerit-org_fj-doc\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=fugerit-org_fj-doc)\n[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=fugerit-org_fj-doc\u0026metric=coverage)](https://sonarcloud.io/summary/new_code?id=fugerit-org_fj-doc)\n[![Known Vulnerabilities](https://snyk.io/test/github/fugerit-org/fj-doc/badge.svg)](https://snyk.io/test/github/fugerit-org/fj-doc)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/58d93495dce94c618c4299cd80eb19f1)](https://app.codacy.com/gh/fugerit-org/fj-doc/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade)\n[![Docker images](https://img.shields.io/badge/dockerhub-images-important.svg?logo=Docker)](https://hub.docker.com/repository/docker/fugeritorg/fj-doc-playground-quarkus/general)\n\n![build and scan](https://github.com/fugerit-org/fj-doc/actions/workflows/build_maven_package.yml/badge.svg)\n[![CI maven compatibility check](https://github.com/fugerit-org/fj-doc/actions/workflows/build_maven_compatibility.yml/badge.svg?branch=branch-compatibility)](https://github.com/fugerit-org/fj-doc/actions/workflows/build_maven_compatibility.yml)\n[![CI native modules build and test](https://github.com/fugerit-org/fj-doc/actions/workflows/build_fj-doc-native-quarkus_test.yml/badge.svg?branch=develop)](https://github.com/fugerit-org/fj-doc/actions/workflows/build_fj-doc-native-quarkus_test.yml)\n\n[![Java runtime version](https://img.shields.io/badge/run%20on-java%208+-%23113366.svg?style=for-the-badge\u0026logo=openjdk\u0026logoColor=white)](https://universe.fugerit.org/src/docs/versions/java8.html)\n[![Java build version](https://img.shields.io/badge/build%20on-java%2017+-%23ED8B00.svg?style=for-the-badge\u0026logo=openjdk\u0026logoColor=white)](https://universe.fugerit.org/src/docs/versions/java17.html)\n[![Apache Maven](https://img.shields.io/badge/Apache%20Maven-3.9.0+-C71A36?style=for-the-badge\u0026logo=Apache%20Maven\u0026logoColor=white)](https://universe.fugerit.org/src/docs/versions/maven3_9.html)\n[![Online playground](https://img.shields.io/badge/Try%20Now-Online%20Playground-1AC736?style=for-the-badge\u0026logo=Onlinect%20Playground\u0026logoColor=white)](https://docs.fugerit.org/fj-doc-playground/home/)\n[![Fugerit Github Project Conventions](https://img.shields.io/badge/Fugerit%20Org-Project%20Conventions-1A36C7?style=for-the-badge\u0026logo=Onlinect%20Playground\u0026logoColor=white)](https://universe.fugerit.org/src/docs/conventions/index.html)\n\nAs of version 8.10.2 most information previously contained in [README](LEGACY_README.md) are available through the new guide : \n\n[![HTML - Guide](https://img.shields.io/badge/HTML-Guide-blue?style=for-the-badge)](https://venusdocs.fugerit.org/guide/ \"Go to project HTML documentation\")\n[![PDF - Guide](https://img.shields.io/badge/PDF-Guide-red?style=for-the-badge)](https://venusdocs.fugerit.org/guide/fj-doc-guide.pdf \"Go to project PDF documentation\")\n\nThe Core library (fj-doc-base) is all you need to start, even though typically you will use at least : \n* [fj-doc-base](fj-doc-base/README.md)\n* [fj-doc-freemarker](fj-doc-freemarker/README.md)\n* One or more type handlers modules\n\n## Quickstart\n\n### Existing project\n\nThe easiest way to add the minimum configuration to an existing project is with the \n[add](https://venusdocs.fugerit.org/guide/#maven-plugin-goal-add) \ngoal of maven plugin, for example, running in a maven project base folder : \n\n```shell\nmvn org.fugerit.java:fj-doc-maven-plugin:add \\\n-Dextensions=base,freemarker,mod-fop\n```\n\n### New project\n\nAlternatively it is possible to create a project from scratch with the  \n[init](https://venusdocs.fugerit.org/guide/#maven-plugin-goal-init)\ngoal of maven plugin, for example, running the command : \n\n```shell\nmvn org.fugerit.java:fj-doc-maven-plugin:init \\\n-DgroupId=org.example.doc \\\n-DartifactId=fugerit-demo-quarkus-3 \\\n-Dflavour=quarkus-3 \\\n-DaddJacoco=true \\\n-DaddFormatting=true \\\n-DwithCI=GitHub\n```\nIt will create a new folder as for the {artifactId} parameter \n(in our example : *fugerit-demo-quarkus-3*)\n\n## Usage\n\nFor more information on framework usage, refer to the \n[guide](https://venusdocs.fugerit.org/guide/), especially : \n\n* [Doc Source Format](https://venusdocs.fugerit.org/guide/#doc-format-entry-point)\n* [Dynamic Data](https://venusdocs.fugerit.org/guide/#doc-freemarker-entry-point)\n* [Doc Handlers](https://venusdocs.fugerit.org/guide/#doc-handlers)\n* [FAQ](https://venusdocs.fugerit.org/guide/#doc-faq)\n\nWhich provides a reference to customized existing and new projects.\n\n## ❤️ Support\n\nThis project is maintained in [my free time](https://github.com/fugerit79).  \nIf you find it useful, please consider supporting it by:\n\n- ⭐ Giving the repository a star\n- 🐛 Opening an issue if you find a problem\n- 🔧 Creating a pull request if you'd like to improve something\n- 📢 Sharing it with others who might be interested\n\nThank you for helping the project grow!\n\n## Special thanks\n\n**Special thanks** to [JetBrains](https://www.jetbrains.com/) \nfor accepting this project in the \n[Licenses for Open Source Development - Community Support](https://jb.gg/OpenSourceSupport) program.\n\n[![JetBrains](https://universe.fugerit.org/src/docs/thanks/jetbrains.png)](https://universe.fugerit.org/src/docs/thanks/jetbrains.html)\n\n**Special thanks** to [Sonar Cloud](https://sonarcloud.io/), \n[Codacy](https://www.codacy.com/) and \n[Snyk](https://snyk.io/) \ntoo for their code review platforms.\n\nLast but not least **thank** to all the OpenSource projects and developers whose software are the building bricks of this and many other repositories.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffugerit-org%2Ffj-doc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffugerit-org%2Ffj-doc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffugerit-org%2Ffj-doc/lists"}