{"adoption": {"forks": 1054, "observed_at": "2026-08-28T04:05:46.094582+00:00", "stars": 1863}, "canonical_url": "https://ross.abutalabs.com/products/spring-security-react-ant-design-polls-app", "card": {"archived": false, "artifact_type": "learning-resource", "description": "Full Stack Polls App built using Spring Boot, Spring Security, JWT, React, and Ant Design", "domain": ["web-development", "education", "security", "backend", "frontend"], "enriched": true, "function": ["auth", "authorization", "web-framework", "ui-components", "http-server"], "health_score": 20, "homepage": "https://www.callicoder.com/spring-boot-spring-security-jwt-mysql-react-app-part-1/", "language": "Java", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["callicoder/spring-security-react-ant-design-polls-app"], "name": "callicoder/spring-security-react-ant-design-polls-app", "platform": ["jvm", "cross-platform"], "pushed_at": "2023-12-10T06:23:57+00:00", "repo": "callicoder/spring-security-react-ant-design-polls-app", "stars": 1863, "tags": ["spring-boot", "spring-security", "jwt", "react", "ant-design", "mysql", "tutorial", "full-stack", "polls-app", "rest-api", "nodejs", "web-server"], "topics": ["spring-boot", "spring-security", "jwt", "react", "ant-design", "mysql", "spring-mvc", "spring-security-jwt", "spring-security-tutorial", "reactjs", "react-router", "react-router-v4", "antd", "database", "authentication", "authorization", "spring-security-react", "login"], "urls": [], "use_cases": ["learn spring security jwt authentication", "build a full stack react spring boot app", "example of role based authorization with spring security", "tutorial for jwt login signup rest api", "react ant design frontend example", "spring boot mysql rest api example"], "what_it_is": "A full-stack polls application similar to Twitter polls, built with Spring Boot, Spring Security, JWT authentication, React, and Ant Design. It serves as the companion code for a multi-part tutorial series on building full-stack apps with JWT-based authentication and role-based authorization.", "when_to_avoid": ["you need a production-ready polls product with support or updates", "you want a template with an explicit open-source license", "you need a modern stack version (this codebase and its tutorials are dated)"], "when_to_choose": ["you want a guided tutorial for Spring Security with JWT and a React frontend", "you need a reference implementation of login/signup with role-based access", "you're learning to connect Spring Boot REST APIs to a React client"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/spring-security-react-ant-design-polls-app", "repo": "callicoder/spring-security-react-ant-design-polls-app", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "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:05:46.094582+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.094582+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:15:38.439295+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aa001e61412fd5c8fb47d90f18ecaf59f828cd6e43381f0c5c94300b425f222e", "fetched_at": "2026-08-28T04:05:46.094582+00:00", "kind": "readme", "missing": false, "url": "https://github.com/callicoder/spring-security-react-ant-design-polls-app"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3108, "days_push": 997, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}