smooth-app
전 세계 식품의 성분·영양·정보를 자유롭게 협업하고 공개하는 데이터베이스
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기UK care provider intelligence platform built on the CQC public API. Extracts, cleans & scores 55,800+ active providers (care homes, GPs, dental, home care) across England. 4-stage ETL pipeline · 98.2% data completeness · weighted quality scoring · CSV/JSON/SQL outputs.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Current instructions: user, training, sales GTM, CRM and operations manuals, updated 15 October 2026. The public offers are the £150 four-week Weekly Digest and £745 one-off Territory Opportunity Brief; the Free Directory remains available. See the dated release evidence for actual deployment and gate observations. Older release statements below retain their dated limits.
Current catalogue: Territory Brief £745 one-off and Weekly Digest £150 for four weeks, subject to the published tax wording and named activation gates. See the current strategy and deploy/stripe-price-manifest.json. Radar/Feed positioning and Stripe prices in the historical project description below are superseded.
Current operator documents: user manual, training and competency, documentation index and 15 October release record. Older dated reports retain their original scope and are not current acceptance certificates.
CareGist is a UK care-provider directory and intelligence service built from Care Quality Commission data. The controlled catalogue-safety release is deployed, but the paid Radar release is not yet approved. Checkout, source collectors, outbound delivery, and other commercial capabilities remain fail-closed until their named recovery, source-trust, legal, and pilot gates pass. A configured vendor credential is not approval to enable a capability.
The live site at https://www.caregist.co.uk serves the Free Directory, provider detail pages, the final Radar/Feed positioning, source-status reporting, and the current legal and licence surfaces. It does not publicly sell legacy data packs, paid listings, extra seats, or predictive products. The live Stripe catalogue contains Radar Regional (£299/month), Radar National (£799/month), Intelligence Feed Pilot (£6,000/year), and quote-only Embedded Enterprise; the three priced products remain checkout-gated. Those historical counts are superseded by the 6 October public health observation: 59,190 location rows and 57,263 active rows. Counts are measured observations, not evidence of record accuracy or source freshness.
Production Neon is on Launch with an evidenced seven-day history window. A point-in-time restore drill, an isolated migration rehearsal, and the production migration chain through 049_cqc_signal_intelligence.sql passed with provider counts preserved. The recovery branch remains retained. Source collectors may now enter shadow mode, but paid checkout and outbound delivery remain blocked until the seven-day source-trust, legal, billing-lifecycle, and private-pilot gates pass.
Current evidence boundaries are recorded in the 6 October verification register. Fresh read-only health checks report degraded source freshness and checkout/delivery disabled; earlier catalogue, counts, restore and deployment statements above are dated evidence, not a current completion certificate.
The canonical deployment is the multi-service configuration in vercel.json:
frontend/ serves public directory, account, and dashboard routes.api/ serves /api/v1/*, internal tasks, health, metrics, billing, and webhooks.Vercel binds the backend service URL to the frontend as CAREGIST_BACKEND_URL. Public /api/v1/* requests are routed to FastAPI; frontend-owned routes such as /api/health/directory remain in Next.js. The old EC2/PM2 instructions are historical and are not a production deployment path.
Checkout, monitoring activation, exports, leads, claims, reviews, enquiries, outbound delivery, remote media, and outbound communications are governance-controlled. Their production and preview defaults are false; enabling any one requires its named approval, denial-path tests, monitoring, and rollback evidence. A configured vendor credential is not approval to enable a capability.
Install Python 3.12 and Node.js 22, then run from the repository root:
./scripts/bootstrap-dev.sh
The command creates .venv with the same Python minor version as CI, installs backend/test/audit dependencies, validates dependency resolution, and installs the locked frontend dependencies.
Run the local gates with:
.venv/bin/python -m pytest
.venv/bin/ruff check api/ tools/ db/ tests/
npm --prefix frontend test
npm --prefix frontend run build
Required runtime values are documented in DEPLOYMENT_CHECKLIST.md. Keep secrets in the approved environment/secret manager; never commit .env or .projects state.
Apply migrations to local or staging environments with db/apply_migrations.py. Production migrations require an evidenced Neon recovery point and the explicit production confirmation flag:
.venv/bin/python db/apply_migrations.py --target staging
.venv/bin/python db/apply_migrations.py --target production --confirm-production-backup
Migrations are forward-only in production: prefer additive expand/contract changes, use a corrective migration for isolated defects, and use Neon point-in-time recovery only for destructive or irrecoverable changes. The two already-applied 034 files are a frozen historical exception. Do not rename them; all future migration numbers must be unique. See db/migrations/README.md and workflows/apply-migrations.md.
CQC reconciliation is prepared from one immutable snapshot, processed by deterministic shards, and finalized before the authoritative watermark advances. The scheduled reconciliation must remain disabled until a complete manual production batch passes its count, coverage, checksum, and watermark gates.
Operational endpoints:
/api/v1/health/liveness — process liveness only/api/v1/health/readiness — traffic dependencies; intentionally separate from source freshness/api/v1/health/freshness — source watermark and derived-feed freshness/api/v1/version — deployed Git SHA for exact-release verification/api/health/directory — frontend directory mode and deployed Git SHA/data-status — public source-watermark statusThe freshness watchdog is configured for a nightly run at 04:10 UTC, after the last poll slot, with deduplicated Postgres state. Actual scheduled execution and delivered notification to [email protected] require separate current evidence; configuration alone does not prove delivery. Preview and production smoke tests compare the deployed SHA with the tested commit and verify /data-status and provider sitemaps.
Neon-native PITR is the sole database recovery strategy. A seven-day restore window is a release prerequisite. The Free-tier observation on 9 August 2026 is historical and is superseded by later Launch-tier recovery evidence described above. This audit did not independently query the current provider plan or re-run a customer restore. Verify the current plan, seven-day window and recorded recovery point against the accepted release before production migration. Monthly drills restore to an isolated branch, run schema/count invariants, record RPO/RTO, and delete the temporary branch only after approval.
Use these documents:
DEPLOYMENT_CHECKLIST.md — authoritative release gatesworkflows/neon-pitr-restore-drill.md — recovery procedure and evidence requirementsops/alert-catalog.yaml — required monitoring signals and ownershipops/evidence/alert-test-template.md — alert-channel test evidencePRODUCTION_READY.md — historical readiness claim retained for audit onlyCAREGIST_APP_URL=https://preview.example.invalid \
CAREGIST_EXPECTED_GIT_SHA="$(git rev-parse HEAD)" \
python3 tools/verify-deploy.py
The verifier checks release identity, directory health, /data-status, provider sitemaps, search, provider rendering, and export denial. Set CAREGIST_REQUIRE_DATABASE=1 for release acceptance. Lead/export mutation smoke is opt-in because it can generate persisted records and notifications.