Medical Research Skills for Claude Code, Codex, Cursor & Copilot
의사가 만든 58개 오픈소스 스킬로 의료 연구 전 과정을 지원
처방전을 영어와 조부모 언어로 큰 그림 일정표로 바꿔 프린트해 냉장고에 붙입니다
Turn a prescription into a big, picture-based medicine timetable in English and your grandparent's language. Print it and stick it on the fridge.
건강TypeScript · CSSGitHub @octonawish-akcodes온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Dose Card: turn a prescription into a big picture medicine timetable (and a talking QR card) in English plus 15 languages. Built for Devpost Build With AI: Basics.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Turns a prescription into a large, picture-based medicine timetable that a grandparent can read on the fridge. It's printed in English plus their own language, from 15 options.
Built for Devpost's Build With AI: Basics hackathon with the Devpost Learn skill pack. The planning documents are in devpost/: scope, PRD, spec and the build checklist.
Upload a photo of the prescription, or press Try a sample prescription. Gemini's vision model copies out each medicine: name, amount, times of day and before/after food. It understands Indian shorthand like 1-0-1, OD, BD, HS, SOS, AC and PC, and marks anything unclear Please check.
Check each row against the paper and fix anything wrong, or type the medicines in by hand.
Pick the grandparent's language. Hindi, Bengali, Marathi, Telugu, Tamil, Gujarati, Kannada, Malayalam, Punjabi and Urdu are available, plus Spanish, French, Arabic, Chinese and Portuguese.
Print a one-page A4 tick chart: medicines down the side, Morning / Afternoon / Evening / Night across, with pictures for each time and for before or after food.
Scan the QR code on the card with any phone to hear it. Tap Morning, Afternoon, Evening or Night and the phone reads what to take, in the card's language, so it works for grandparents who can't read. Share on WhatsApp sends the same talking card to family. The card travels inside the link (after #), never to our server.
It never gives medical advice. It only copies the prescription, and the family member confirms every row.
On 17 fictional test prescriptions (13 in different handwriting styles plus a typed discharge summary, and 3 hard cases: an elaborate script, a very blurry photo and instructions in Hindi), the reader:
See the Evidence page. The test prescriptions are computer-drawn and cleaner than real handwriting, so they're a best case. Re-run with pnpm render-evals && pnpm eval; cached readings are in evals/raw/.
Needs Node 22+ and pnpm.
cp .env.example .env.local # add your Gemini API key (Anthropic key optional, used as a backup)
pnpm install
pnpm dev # http://localhost:3000
pnpm test # unit tests
Without a key, typing and printing still work, and the sample prescription uses its saved reading.
app/page.tsx + components/: the single screen with the start buttons, medicine list, card details and live card preview. The list is saved in this browser's localStorage only.app/api/read/route.ts + lib/reader.ts: the one server function. It sends the photo to Gemini (gemini-3.5-flash, falling back to two other Gemini models, then to Claude claude-sonnet-5-5 if an Anthropic key is set) with a fixed JSON schema, then validates the result with zod. The photo is never stored or logged.lib/share.ts, components/CardQR.tsx, app/listen/: the talking card. The QR link carries the card in its # fragment, and /listen reads it aloud with the browser's speech voices (lib/speech.ts).lib/translations.ts: the fixed card labels for each language. Switching language is instant and never calls the AI.app/card.css: the card and the print rules, which print only the card on A4.public/sample/prescription.jpg is a fictional prescription made for this project. public/sample/reading.json is a real reading of it, used only if the live reader is unavailable, and is labelled "Sample reading (saved)" in the app.