{"id":22862405,"url":"https://github.com/dylibso/xtp-kafka-demo","last_synced_at":"2026-02-04T10:48:30.161Z","repository":{"id":258309955,"uuid":"866680566","full_name":"dylibso/xtp-kafka-demo","owner":"dylibso","description":"Pluggable Stream Processing with Kafka + XTP","archived":false,"fork":false,"pushed_at":"2024-11-15T17:10:58.000Z","size":2735,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-30T21:52:22.585Z","etag":null,"topics":["chicory","connect","financial-analysis","java","kafka","stream","webassembly","xtp"],"latest_commit_sha":null,"homepage":"https://www.getxtp.com/blog/pluggable-stream-processing-with-xtp-and-kafka","language":"Java","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/dylibso.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2024-10-02T17:28:12.000Z","updated_at":"2024-11-15T17:11:02.000Z","dependencies_parsed_at":"2025-04-30T21:52:08.583Z","dependency_job_id":"cbdada1c-5f0e-407f-92cb-33c79f6b9b6c","html_url":"https://github.com/dylibso/xtp-kafka-demo","commit_stats":null,"previous_names":["evacchi/xtp-kafka-demo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dylibso/xtp-kafka-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dylibso%2Fxtp-kafka-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dylibso%2Fxtp-kafka-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dylibso%2Fxtp-kafka-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dylibso%2Fxtp-kafka-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dylibso","download_url":"https://codeload.github.com/dylibso/xtp-kafka-demo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dylibso%2Fxtp-kafka-demo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263156601,"owners_count":23422459,"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","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":["chicory","connect","financial-analysis","java","kafka","stream","webassembly","xtp"],"created_at":"2024-12-13T10:13:27.737Z","updated_at":"2026-02-04T10:48:25.127Z","avatar_url":"https://github.com/dylibso.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# An XTP + Kafka example project\n\n## Requirements\n\n- XTP CLI\n- JDK 17+\n- Docker (or similar) for the Kafka test container\n\n## Structure\n\n- **plugins** contains the XTP plugins\n- **app** contains the Quarkus application.\n\n\n## Building Plugins\n\n- Each plugin is in its own folder under `plugins`\n- Customize their `xtp.toml` with:\n\n```\napp_id = \"\u003cyour-app-id\u003e\"\nbin = \"dist/plugin.wasm\"\nextension_point_id = \"\u003cyour-extension-point-id\u003e\"\n```\n\n`app_id` and `extension_point_id` for your own app\n- Build each plug-in with `xtp plugin build` or run `make` from the top directory (`plugins`)\n\n## Building and Starting the Java Service\n\nCreate a `.env` file in the root of the `app` directory with the following contents:\n\n```\nxtp.token=\u003cyour-xtp-token\u003e\nxtp.guest-key=\u003cyour-guest-key\u003e\nxtp.extension-point=\u003cyour-extension-point-id\u003e\nxtp.user=\u003cyour-user-id\u003e\n```\n\nThe user ID is a string that looks like `usr_\u003calphanumeric-string\u003e`\n\n### Building\n\n```\ncd app\n./mvnw verify\n```\n\n### Starting\n```\ncd app\n./mvnw quarkus:dev \n```\n\nThe Quarkus DevTools will automatically start and shutdown a \nKafka broker listening on `localhost:9092`.\n\n### Building a Self-Contained App\n\n```\ncd app\n./mvnw package \n```\n\nStart with:\n\n```\njava -jar target/quarkus-app/quarkus-run.jar\n```\n\nMake sure that a local Kafka instance is listening on `localhost:9092`. \n\n\n### Building a Native Image\n```\ncd app\n./mvnw package -Dnative \n```\n\nStart with:\n\n```\n./target/quarkus-xtp-kafka-demo-1.0.0-SNAPSHOT-runner\n```\n\nMake sure that a local Kafka instance is listening on `localhost:9092`. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdylibso%2Fxtp-kafka-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdylibso%2Fxtp-kafka-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdylibso%2Fxtp-kafka-demo/lists"}