{"id":20217896,"url":"https://github.com/matrix-org/matrix-rust-components-kotlin","last_synced_at":"2026-04-21T14:04:18.734Z","repository":{"id":57742978,"uuid":"464565692","full_name":"matrix-org/matrix-rust-components-kotlin","owner":"matrix-org","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-15T10:31:45.000Z","size":31978,"stargazers_count":24,"open_issues_count":14,"forks_count":23,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-04-15T12:26:13.652Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matrix-org.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","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":"2022-02-28T16:47:49.000Z","updated_at":"2026-04-13T16:03:52.000Z","dependencies_parsed_at":"2025-12-30T22:08:21.527Z","dependency_job_id":null,"html_url":"https://github.com/matrix-org/matrix-rust-components-kotlin","commit_stats":null,"previous_names":[],"tags_count":295,"template":false,"template_full_name":"matrix-org/.github","purl":"pkg:github/matrix-org/matrix-rust-components-kotlin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matrix-org%2Fmatrix-rust-components-kotlin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matrix-org%2Fmatrix-rust-components-kotlin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matrix-org%2Fmatrix-rust-components-kotlin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matrix-org%2Fmatrix-rust-components-kotlin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matrix-org","download_url":"https://codeload.github.com/matrix-org/matrix-rust-components-kotlin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matrix-org%2Fmatrix-rust-components-kotlin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31853280,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: 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":[],"created_at":"2024-11-14T06:36:18.097Z","updated_at":"2026-04-15T18:04:15.843Z","avatar_url":"https://github.com/matrix-org.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Matrix rust components kotlin\n\nThis repository is used for distributing kotlin releases of the Matrix Rust SDK. It'll provide the corresponding aar and also publish them on maven.\n\n## Releasing\n\nThere is a ['Release SDK Library (parallel)'](https://github.com/matrix-org/matrix-rust-components-kotlin/actions/workflows/release_sdk_parallel.yml) Github Actions workflow you can run with a parameter for the SDK branch or SHA - tags don't work correctly at the moment - and the new version name to release. \nThere is also a 'Release Crypto Library' one that does the same for the crypto library.\n\nIf you want to do it manually instead:\n\nYou need to set GITHUB_API_TOKEN in your env to let the script be able to commit and push, with this configuration:\n- Content: Read and Write;\n- Metadata: Read only.\n\nMake sure to also have setup the maven credentials and gpg key in your [env](scripts/publish-root.gradle) \n\nWhenever a new release of the underlying components is available, we need to tag a new release in this repo to make them available. \nThis is done with the release script found in the scripts directory. It'll also push the release to the maven repository.\n\nUsage : \n```\n# To build the SDK/crypto library binaries from the matrix-rust-sdk repo:\n./scripts/build.sh -p \u003cmatrix-rust-sdk-path\u003e -m \u003csdk/crypto\u003e -r\n# To release the built SDK/crypto library binaries to maven:\npython3 ./scripts/publish_release.py --version \u003cversion\u003e --linkable-ref \u003csdk-branch/SHA\u003e --module \u003cSDK/CRYPTO\u003e\n```\n\n## Testing locally\nAs the package vendors a pre-built binary of the SDK, all local development is done via the SDK's repo instead of this one.\nYou can use the build script to generate the AAR file for testing. Be sure to have checked out the matrix-rust-sdk first.\n\n\nThe `-t` argument needs a valid architecture to build. For Android, these are:\n- aarch64-linux-android\n- armv7-linux-androideabi\n- i686-linux-android\n- x86_64-linux-android\n\nAlternatively, to build only the host's architecture, you can use the `-l` argument.\n\nUsage:\n\nTo build the main crate (eg, for Element-X):\n```\n./scripts/build.sh -p \u003cmatrix-rust-sdk-path\u003e -m sdk -l\n```\n\nOr:\n```\n./scripts/build.sh -p \u003cmatrix-rust-sdk-path\u003e -m sdk -t \u003carch\u003e\n```\n\nTo build just the crypto crate (eg, for Element Android classic), use this instead:\n```\n./scripts/build.sh -p \u003cmatrix-rust-sdk-path\u003e -m crypto -l\n```\n\nOther useful flags:\n\n- `-o OUTPUT_DIR`: Moves the generated AAR file to the dir `OUTPUT_DIR`.\n- `-r`: Produces a release build instead of a development one.\n\nYou should then import this AAR in your project.\n\n## Prerequisites\n\n* Android NDK\n* the Rust toolchain\n* cargo-ndk `cargo install cargo-ndk`\n* protoc `brew install protobuf` or downloading [here](https://github.com/protocolbuffers/protobuf/releases)\n* android targets (e.g. `rustup target add aarch64-linux-android armv7-linux-androideabi x86_64-linux-android i686-linux-android`)\n\n\n## License\n\n[Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatrix-org%2Fmatrix-rust-components-kotlin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatrix-org%2Fmatrix-rust-components-kotlin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatrix-org%2Fmatrix-rust-components-kotlin/lists"}