{"id":43323763,"url":"https://github.com/infiniticio/docs.examples","last_synced_at":"2026-02-01T23:03:18.572Z","repository":{"id":244711931,"uuid":"808767531","full_name":"infiniticio/docs.examples","owner":"infiniticio","description":"Infinitic examples from the documentation","archived":false,"fork":false,"pushed_at":"2024-12-27T15:11:27.000Z","size":493,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-31T06:40:40.404Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.infinitic.io/docs/introduction/examples","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/infiniticio.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-05-31T19:18:57.000Z","updated_at":"2024-12-27T15:11:31.000Z","dependencies_parsed_at":"2024-12-27T16:20:10.781Z","dependency_job_id":"5f9d2a76-8cd2-4a22-a6d8-8615a1274e24","html_url":"https://github.com/infiniticio/docs.examples","commit_stats":null,"previous_names":["infiniticio/examples"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/infiniticio/docs.examples","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infiniticio%2Fdocs.examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infiniticio%2Fdocs.examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infiniticio%2Fdocs.examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infiniticio%2Fdocs.examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/infiniticio","download_url":"https://codeload.github.com/infiniticio/docs.examples/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infiniticio%2Fdocs.examples/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28993769,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T22:01:47.507Z","status":"ssl_error","status_checked_at":"2026-02-01T21:58:37.335Z","response_time":56,"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":[],"created_at":"2026-02-01T23:03:16.363Z","updated_at":"2026-02-01T23:03:18.565Z","avatar_url":"https://github.com/infiniticio.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Infinitic Examples\n\nThis repository contains implementations of the examples described in the Infinitic documentation:\n\n- https://docs.infinitic.io/docs/introduction/hello-world\n- https://docs.infinitic.io/docs/introduction/examples\n\n## Project Overview and Setup Guide\n\n### Languages\n\nWhile this repository showcases both Java and Kotlin implementations side-by-side, \nin a real-world scenario, you would typically choose one language for your project.\nThe dual implementation here is purely for demonstration purposes.\n\nWe encourage you to explore the implementation in your preferred language\nand refer to the corresponding documentation for detailed explanations.\n\n### Prerequisites\n\nTo run the examples, you'll need:\n\n1. A [Pulsar](https://pulsar.apache.org) cluster\n2. A database (MySQL, PostgreSQL, or Redis)\n\nFor quick setup, we recommend using Docker:\n\n1. Install [Docker](https://docs.docker.com/engine/install/) on your system.\n2. Clone this repository to your local machine.\n3. Navigate to the project root folder.\n4. Run `docker compose up` to start local Pulsar and Redis instances.\n\nTo use a different Pulsar cluster or database, update the [`infinitic.yml`](./common/src/main/resources/infinitic.yml) file.\n(Refer to the [Infinitic documentation](https://docs.infinitic.io/docs/workflows/workers#configuration-file) for configuration details.)\n\n### Repository Structure\n\nThis repository is orchestrated in alignment with Infinitic's aim to streamline\nthe development of distributed applications. Here's how it is structured:\n\n- Individual modules are allocated for each service and workflow. This modular structure promotes independent maintenance of each component.\n- The `contracts` module houses the Java interfaces and shared objects that form the contract for all services and workflows. \nThis encapsulates the agreements between various parts of your system in a centralized place.\n- A `common` module contains helper classes used in Services and Workflows implementation.\n\n### Worker Implementation\n\nFor simplicity and consistency, all services and workflows in these examples use\na common [Worker implementation](./common/src/main/java/com/acme/common/Worker.java).\n\nThe worker's behavior is customized through a configuration file, received as the first argument \nwhen launched through the gradle tasks defined in the global [build file](./build.gradle).\n\nConfiguration files are stored in the `resources` folder of each Workflow and Service,\nand are available in two versions, respectively targeting the Java or the Kotlin implementation.\n\n### Workflows Dispatching\n\nFor demonstration purposes, Workflows are dispatched through [gradle tasks](./common/build.gradle) \ndefined in the gradle build file of the `common` module.\nThe code of those tasks is on the [test](./common/src/test/java/com/acme/clients) folder of `common`. \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfiniticio%2Fdocs.examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finfiniticio%2Fdocs.examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfiniticio%2Fdocs.examples/lists"}