{"id":42456461,"url":"https://github.com/caktus/kafis","last_synced_at":"2026-01-28T09:00:02.159Z","repository":{"id":255735231,"uuid":"852980411","full_name":"caktus/kafis","owner":"caktus","description":"CLI application based on SourceAFIS for comparing fingerprint templates.","archived":false,"fork":false,"pushed_at":"2024-09-10T18:35:07.000Z","size":90,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-09-10T20:56:04.526Z","etag":null,"topics":["kotlin","sourceafis"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/caktus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2024-09-05T19:05:51.000Z","updated_at":"2024-09-10T18:35:10.000Z","dependencies_parsed_at":"2024-09-06T23:24:37.342Z","dependency_job_id":null,"html_url":"https://github.com/caktus/kafis","commit_stats":null,"previous_names":["caktus/kafis"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/caktus/kafis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caktus%2Fkafis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caktus%2Fkafis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caktus%2Fkafis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caktus%2Fkafis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caktus","download_url":"https://codeload.github.com/caktus/kafis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caktus%2Fkafis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28843105,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T07:39:25.367Z","status":"ssl_error","status_checked_at":"2026-01-28T07:39:24.487Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["kotlin","sourceafis"],"created_at":"2026-01-28T09:00:01.978Z","updated_at":"2026-01-28T09:00:02.153Z","avatar_url":"https://github.com/caktus.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kotlin AFIS CLI\n\nCLI application based on SourceAFIS for comparing fingerprint templates.\n\n## GraalVM installation\n\n### 1a. With binary support\nTo build a native CLI binary on MacOS, you will need GraalVM \u003e= 22 from Oracle.\nFollow GraalVM [Installation on macOS Platforms](https://www.graalvm.org/latest/docs/getting-started/macos/)\ninstructions to install it. For example:\n\n```shell\nwget https://download.oracle.com/graalvm/22/latest/graalvm-jdk-22_macos-aarch64_bin.tar.gz\ntar -xzf graalvm-jdk-22_macos-aarch64_bin.tar.gz\n# Note, you may download a newer minor version; alter the commands below accordingly\nsudo mv graalvm-jdk-22.0.2+9.1 /Library/Java/JavaVirtualMachines\nrm graalvm-jdk-22_macos-aarch64_bin.tar.gz\n```\n\nAdd to `.envrc` and run `direnv allow` to set the environment variables:\n```shell\nexport JAVA_HOME=/Library/Java/JavaVirtualMachines/graalvm-jdk-22.0.2+9.1/Contents/Home\nexport PATH=$JAVA_HOME/bin:$PATH\nexport GRAALVM_HOME=$JAVA_HOME\n```\n\n### 1b. Without binary support (via `jabba`)\nIf you don't need to compile a native binary, you can use Jabba as a JVM manager to install GraalVM:\n\n```shell\n# use Jabba to install GraalVM\njabba ls-remote | grep graalvm | grep 21\njabba install graalvm-ce-java16@21.1.0\n```\n\nAdd to `.envrc` and run `direnv allow` to set the environment variables:\n```shell\nsource ~/.jabba/jabba.sh\nexport JABBA_VM=graalvm-ce-java16@21.1.0\nexport JAVA_HOME=$(jabba which $JABBA_VM)/Contents/Home\nexport PATH=$JAVA_HOME/bin:$PATH\nexport GRAALVM_HOME=$JAVA_HOME\n```\n\n#### Install the `native-image` command\nInstall the `native-image` utility using the Graal updater.\n```shell\ngu available\ngu install native-image\n```\n\n## 2. Building and using CLI\n\n### Running with Gradle\n```shell\n./gradlew clean\n./gradlew build\n./run.sh --file-name=thumbprints.csv --thread-count=14 --output-score-limit=40 --subject-limit=1000\n```\n\n### Building an uber jar\n```shell\n./gradlew clean\n./gradlew uberJar\njava -cp build/libs/kafis.jar com.smartelect.AppKt --file-name=thumbprints.csv --thread-count=14 --output-score-limit=40 --subject-limit=1000\n```\n\n### Building a native image (not yet supported)\n```shell\n./gradlew build\n./gradlew buildNativeImage\n\ncd build/\n./kafis --file-name=thumbprints.csv --thread-count=14 --output-score-limit=40\n```\n\n## Docker image\n\n```shell\ndocker build . -t kafis:latest\ndocker run \\\n  --mount=type=bind,source=${PWD}/thumbprints.csv,target=/app/thumbprints.csv \\\n  kafis:latest -- \\\n  java -cp /app/kafis.jar com.smartelect.AppKt \\\n  --file-name=/app/thumbprints.csv \\\n  --thread-count=14 \\\n  --output-score-limit=40 \\\n  --subject-limit=2000\n```\n\n## Maintainer\n\nCaktus Consulting Group, LLC\n\nThanks to [@lreimer](https://github.com/lreimer) for the [hands-on-clikt](https://github.com/lreimer/hands-on-clikt) template used to start this repository.\n\n## License\n\nThis software is provided under the MIT open source license, read the `LICENSE`\nfile for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaktus%2Fkafis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaktus%2Fkafis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaktus%2Fkafis/lists"}