{"id":31105936,"url":"https://github.com/bright/spring-modulith-gcp","last_synced_at":"2026-01-28T12:03:15.099Z","repository":{"id":287328538,"uuid":"964373622","full_name":"bright/spring-modulith-gcp","owner":"bright","description":"Spring Modulith support for GCP","archived":false,"fork":false,"pushed_at":"2026-01-27T13:31:17.000Z","size":176,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-01-27T21:04:49.246Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bright.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-11T05:45:47.000Z","updated_at":"2026-01-27T13:31:23.000Z","dependencies_parsed_at":"2025-09-17T04:48:20.008Z","dependency_job_id":"7a1b7b7d-d11e-42d0-9d21-5076ee83e54e","html_url":"https://github.com/bright/spring-modulith-gcp","commit_stats":null,"previous_names":["bright/spring-modulith-gcp"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/bright/spring-modulith-gcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bright%2Fspring-modulith-gcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bright%2Fspring-modulith-gcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bright%2Fspring-modulith-gcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bright%2Fspring-modulith-gcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bright","download_url":"https://codeload.github.com/bright/spring-modulith-gcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bright%2Fspring-modulith-gcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28845103,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T10:53:21.605Z","status":"ssl_error","status_checked_at":"2026-01-28T10:53:20.789Z","response_time":57,"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":"2025-09-17T04:48:11.266Z","updated_at":"2026-01-28T12:03:15.088Z","avatar_url":"https://github.com/bright.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bright Spring Modulith GCP\n\n[![CI](https://github.com/bright/spring-modulith-gcp/actions/workflows/ci.yml/badge.svg)](https://github.com/bright/spring-modulith-gcp/actions/workflows/ci.yml)\n[![Maven Central](https://img.shields.io/maven-central/v/pl.brightinventions.spring.modulith/spring-modulith-starter-gcp-datastore.svg)](https://central.sonatype.com/search?q=pl.brightinventions.spring.modulith)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nThis project aims to integrate [Spring Modulith](https://spring.io/projects/spring-modulith) with Google Cloud Platform\nservices. The initial focus is on supporting GCP Datastore through a custom, work-in-progress transaction manager that\novercomes the limitations of the official GCP Spring library.\n\n## Installation\n\n### Gradle\n\n```kotlin\n// For the starter (recommended)\nimplementation(\"pl.brightinventions.spring.modulith:spring-modulith-starter-gcp-datastore:1.2.0\")\n\n// Or individual modules\nimplementation(\"pl.brightinventions.spring.modulith:spring-gcp-datastore:1.2.0\")\nimplementation(\"pl.brightinventions.spring.modulith:spring-modulith-events-gcp-datastore:1.2.0\")\n```\n\n### Maven\n\n```xml\n\u003c!-- For the starter (recommended) --\u003e\n\u003cdependency\u003e\n    \u003cgroupId\u003epl.brightinventions.spring.modulith\u003c/groupId\u003e\n    \u003cartifactId\u003espring-modulith-starter-gcp-datastore\u003c/artifactId\u003e\n    \u003cversion\u003e1.2.0\u003c/version\u003e\n\u003c/dependency\u003e\n\n\u003c!-- Or individual modules --\u003e\n\u003cdependency\u003e\n    \u003cgroupId\u003epl.brightinventions.spring.modulith\u003c/groupId\u003e\n    \u003cartifactId\u003espring-gcp-datastore\u003c/artifactId\u003e\n    \u003cversion\u003e1.2.0\u003c/version\u003e\n\u003c/dependency\u003e\n\u003cdependency\u003e\n    \u003cgroupId\u003epl.brightinventions.spring.modulith\u003c/groupId\u003e\n    \u003cartifactId\u003espring-modulith-events-gcp-datastore\u003c/artifactId\u003e\n    \u003cversion\u003e1.2.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Modules\n\n- **spring-gcp-datastore**  \n  Core module providing GCP Datastore integration with Spring.\n\n- **spring-modulith-events-gcp-datastore**  \n  Integration of Spring Modulith Events with GCP Datastore for event storage.\n  See [module documentation for details](spring-modulith-events-gcp-datastore/README.md).\n\n- **spring-modulith-starter-gcp-datastore**  \n  Spring Boot starter for easy integration of Spring Modulith with GCP Datastore.\n\n## Project Goals\n\n- **Spring Modulith \u0026 GCP Datastore:**  \n  Implement a dedicated transaction manager to seamlessly integrate Spring Modulith with GCP Datastore, removing the\n  limitations of the existing manager provided by the official library.\n\n- **Future Enhancements:**  \n  Support for GCP Firebase and Spanner is planned for future development.\n\n## Guidelines\n\nPlease refer to the [guidelines](.junie/guidelines.md) for further information on code style and testing practices. Note\nthat the project adheres to Spring Boot Starter conventions and Gradle's Kotlin DSL using version 8.13, as well as JVM\ntarget 21.\n\n## Release Process\n\nThis project uses GitHub Actions for continuous integration and automated releases to Maven Central.\n\n### Continuous Integration\n\nThe CI workflow runs on every push to the main branch and on pull requests. It builds the project and runs all tests.\n\n### Releasing to Maven Central\n\nTo release a new version to Maven Central:\n\n1. Go to the \"Actions\" tab in the GitHub repository\n2. Select the \"Release\" workflow\n3. Click \"Run workflow\"\n4. Enter the release version (e.g., \"0.1.0\") and the next development version (e.g., \"0.1.1-SNAPSHOT\")\n5. Click \"Run workflow\"\n\nThe workflow will:\n- Update the version in the build files\n- Build and test the project\n- Sign the artifacts with GPG\n- Publish to Maven Central\n- Create a Git tag for the release\n- Update the version to the next development version\n\n### Required Secrets\n\nThe following secrets must be configured in the GitHub repository:\n\n- `SONATYPE_USERNAME`: Sonatype OSSRH username\n- `SONATYPE_PASSWORD`: Sonatype OSSRH password\n- `GPG_SIGNING_KEY`: GPG private key for signing artifacts\n- `GPG_SIGNING_PASSWORD`: Password for the GPG key\n\n## Contributors\n\n- Bright Inventions Team  \n  For more information about the company behind this project, please\n  visit [Bright Inventions](https://brightinventions.pl).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbright%2Fspring-modulith-gcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbright%2Fspring-modulith-gcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbright%2Fspring-modulith-gcp/lists"}