{"adoption": {"forks": 30423, "observed_at": "2026-08-28T04:10:31.345107+00:00", "stars": 9482}, "canonical_url": "https://ross.abutalabs.com/products/spring-petclinic", "card": {"archived": false, "artifact_type": "application", "description": "A sample Spring-based application", "domain": ["web-development", "developer-tools", "education", "tutorials", "backend"], "enriched": true, "function": ["developer-tools", "http-server"], "health_score": 80, "homepage": null, "language": "CSS", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["spring-projects/spring-petclinic"], "name": "spring-projects/spring-petclinic", "platform": ["jvm", "cross-platform"], "pushed_at": "2026-08-26T10:57:55+00:00", "repo": "spring-projects/spring-petclinic", "stars": 9482, "tags": ["sample-application", "spring-boot", "spring", "java", "reference-app", "demo", "crud", "jpa", "thymeleaf", "maven", "gradle", "starter", "boilerplate", "tutorial", "h2-database", "web-server", "docker"], "topics": [], "urls": [], "use_cases": ["learn spring boot through a complete working example", "study a sample spring mvc crud web application", "see how to structure a spring data jpa project with tests", "reference project for spring best practices and conventions", "demo app to try spring tooling like maven, gradle, and container builds", "starting point for practicing spring development locally"], "what_it_is": "Spring PetClinic is the official Spring sample application: a Spring Boot web app that manages a veterinary clinic's owners, pets, veterinarians, and visits. It is maintained by the Spring team as a reference example demonstrating idiomatic Spring Boot, Spring MVC, Spring Data JPA, and testing practices.", "when_to_avoid": ["you need a real veterinary practice management system - this is a demo with an in-memory H2 database and seeded sample data", "you want a production-ready starter with authentication, multi-tenancy, or operational hardening", "your stack is not Java/JVM-based, since the entire example is built around Spring Boot"], "when_to_choose": ["you are learning Spring Boot, Spring MVC, or Spring Data JPA and want a canonical, well-maintained example", "you need a realistic baseline app for demos, tooling evaluation, reproducing bugs, or conference presentations", "you want to study project conventions such as Maven/Gradle builds, layered architecture, tests, and container image builds"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/spring-petclinic", "repo": "spring-projects/spring-petclinic", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "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:10:31.345107+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.345107+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.588874+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "784132c86dbb7664d39e0e8bb8b1a54169f6c6b325de68b35745714b6939ea4e", "fetched_at": "2026-08-28T04:10:31.345107+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spring-projects/spring-petclinic"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4984, "days_push": 7, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}