Mirobody
인간 건강의 표준 레지스트리, 약 2천 개 임상·생활 지표를 하나의 언어로 정리
약을 검색하면 자연 요법 정보와 근거 수준·약물 상호작용을 확인할 수 있는 서비스(의료 조언이 아님)
Search a drug and see information on natural remedies related to it: evidence levels and known interactions with medications. Not medical advice, and never a replacement for a prescribed medication.
건강GitHub @gr8monk3ys온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Drug-to-natural-remedy search whose seed data is held to safety invariants by test; fails closed on API errors
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Search a pharmaceutical and get information on the natural remedies related to it: what each is used for, how strong the evidence is, and known interactions with medications. Each relationship is labelled Similar use, Complementary or Supportive, and none is presented as a replacement for a prescribed medication. Live at https://remedi.vivancedata.com.
Remedi is information, not medical advice. Never stop or change a prescribed medication without talking to your doctor or pharmacist.
The interesting part is not the search; it is what the data is not allowed to
say. The seed set (85 drugs, 488 remedies, 235 mappings in
prisma/seed-data/mappings.ts) is held to
pharmacological invariants by
__tests__/seed-data/mappings.test.ts,
so a careless edit fails CI instead of shipping:
Alternative, shown as "Similar use"). Supportive
entries are allowed; a substitute is a test failure.The same stance applies at runtime. If the interactions API fails (rate limit, database blip), the remedy page renders an error. It used to fall through to the empty state and say "no known interactions", which is the one wrong answer a safety checker must never give (#69).
Next.js 16 (App Router, React 19), TypeScript, Bun, Prisma 7 + PostgreSQL,
Tailwind 4, Clerk auth, Stripe, Resend, Sentry. OpenAI is optional and only
powers /api/ai-search.
git clone https://github.com/gr8monk3ys/remedi.git && cd remedi
bun install
cp .env.example .env # defaults work for local dev
docker-compose up -d postgres # Postgres on localhost:5433
bun run init # prisma generate + migrate + seed
bun run dev # http://localhost:3000
curl "http://localhost:3000/api/search?query=ibuprofen"
Search order: local database, then OpenFDA (results are cached back into the
database), then a small in-memory fallback. OPENFDA_API_KEY raises the FDA
rate limit from 40 to 240 requests/min. Set bun run import:fda:dry to preview
a bulk import; see docs/OPENFDA_IMPORT.md.
bun run format:check && bun run lint && bun run type-check && bun run knip
bun run test:run # vitest unit tests (__tests__/)
bun run test:e2e # playwright (e2e/), needs the database
bun run db:verify && bun run db:integrity && bun run prod:check
All of the above run in .github/workflows/ci.yml; test and e2e are the
required checks on main.
app/api/ search, remedy, interactions, favorites, contributions, admin, webhooks
lib/remedy-matcher.ts token-overlap scoring; MIN_DISPLAY_SIMILARITY hides weak mappings
lib/openFDA.ts FDA client with retry
lib/db/ all Prisma access
prisma/seed-data/ curated drugs, remedies and mappings
proxy.ts CSP, CORS and auth-protected routes (Next middleware)
docs/ DEPLOYMENT.md, OPENFDA_IMPORT.md, PWA.md, SENTRY_ALERTS.md
GPL-3.0, see LICENSE.
Informational only, not medical advice. Talk to a physician or pharmacist before changing any medication.