{"adoption": {"forks": 2894, "observed_at": "2026-08-28T04:06:23.838807+00:00", "stars": 2188}, "canonical_url": "https://ross.abutalabs.com/products/spring-petclinic-microservices", "card": {"archived": false, "artifact_type": "application", "description": "Distributed version of Spring Petclinic built with Spring Cloud", "domain": ["microservices", "developer-tools", "self-hosted", "web-development", "artificial-intelligence"], "enriched": true, "function": ["microservices", "api-gateway", "service-discovery", "tracing", "monitoring", "deployment", "chatbot"], "health_score": 89, "homepage": null, "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["spring-petclinic/spring-petclinic-microservices"], "name": "spring-petclinic/spring-petclinic-microservices", "platform": ["jvm"], "pushed_at": "2026-08-21T06:42:46+00:00", "repo": "spring-petclinic/spring-petclinic-microservices", "stars": 2188, "tags": ["spring-cloud", "spring-boot", "sample-application", "eureka", "resilience4j", "opentelemetry", "prometheus", "grafana", "chaos-engineering", "distributed-systems", "docker", "spring", "kubernetes"], "topics": ["spring-cloud", "microservices", "eureka", "docker", "spring-boot-admin", "ribbon", "zipkin", "hystrix", "micrometer", "prometheus", "grafana", "chaos-monkey", "opentelemetry", "resilience4j"], "urls": [], "use_cases": ["learn how to build microservices with Spring Cloud", "reference architecture for splitting a monolith into microservices", "demonstrate service discovery with Eureka", "set up distributed tracing with Zipkin and OpenTelemetry", "monitor microservices with Prometheus and Grafana", "implement circuit breakers and resilience patterns with Resilience4j", "run a full microservices stack locally with docker-compose"], "what_it_is": "A distributed version of the Spring PetClinic sample application built with Spring Cloud, demonstrating microservices architecture with service discovery, API gateway, circuit breakers, and observability tooling. It serves as a reference implementation for learning how to split a monolithic Spring application into independently deployable microservices.", "when_to_avoid": ["you need a production-ready application rather than a sample/demo project", "you are not using the Java/Spring ecosystem", "you want a minimal example without the overhead of multiple services and infrastructure components"], "when_to_choose": ["you want a well-maintained reference example of Spring Cloud microservices", "you are learning microservices patterns like service discovery, config server, and API gateway", "you need a sample app to practice observability with tracing, metrics, and dashboards", "you want to see Spring AI integrated into a microservices setup"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/spring-petclinic-microservices", "repo": "spring-petclinic/spring-petclinic-microservices", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:23.838807+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:47:51.892147+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6917dad954c925a2b4a67e8c53f5daf92e09614f423827836009d775132ea0ad", "fetched_at": "2026-08-28T04:06:23.838807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-petclinic/spring-petclinic-microservices"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3581, "days_push": 12, "days_rel": 613, "gap_med": null, "n_releases_24m": 1}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}