尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Hippo surgery tracker
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗The operating system for surgical growth. Log cases, track performance, benchmark against peers, and build a fellowship-worthy portfolio.
Hippo is a PHIA-safe surgical case logging and performance analytics platform for residents, fellows, and attending surgeons. It combines the motivational design of Strava with the precision of a surgical logbook.
Core features:
| Layer | Technology |
|---|---|
| Framework | Next.js 14 (App Router) |
| Language | TypeScript |
| Styling | Tailwind CSS |
| UI Components | Custom (shadcn/ui inspired) |
| Database ORM | Prisma (PostgreSQL) |
| Validation | Zod |
| Excel Export | ExcelJS |
| Icons | Lucide React |
| Auth | next-auth (structure in place) |
surgitrack/
├── prisma/
│ ├── schema.prisma # Full data model
│ └── seed.ts # Dev seed data
├── src/
│ ├── app/
│ │ ├── (app)/ # Authenticated app shell
│ │ │ ├── dashboard/ # Main dashboard
│ │ │ ├── log/ # Multi-step case logging
│ │ │ ├── cases/ # Case history + filters
│ │ │ ├── analytics/ # Charts & learning curves
│ │ │ ├── benchmarks/ # Procedure benchmarks
│ │ │ ├── leaderboard/ # Opt-in rankings
│ │ │ ├── social/ # Friends & feed
│ │ │ ├── profile/ # Surgeon profile
│ │ │ └── settings/ # Privacy & account settings
│ │ ├── onboarding/ # First-run flow
│ │ ├── api/
│ │ │ └── export/ # Excel export endpoint
│ │ ├── globals.css
│ │ └── layout.tsx
│ ├── components/
│ │ ├── ui/ # Core UI primitives
│ │ ├── charts/ # SVG chart components
│ │ ├── layout/ # Sidebar, TopBar, MobileNav
│ │ ├── cases/ # Case cards, table, filters
│ │ ├── dashboard/ # Stat cards, milestones, streaks
│ │ ├── social/ # Friend cards, feed, compare
│ │ └── shared/ # ProGate, CelebrationModal, etc.
│ ├── data/
│ │ └── mockData.ts # 42 seed cases + all mock data
│ ├── hooks/
│ │ ├── useCases.ts # Case state + CRUD
│ │ ├── useStats.ts # Computed analytics
│ │ ├── useUser.ts # User/profile state
│ │ └── useMilestones.ts # PR + milestone tracking
│ └── lib/
│ ├── constants.ts # Enums, specialty/procedure lists
│ ├── types.ts # TypeScript interfaces
│ ├── phia.ts # Privacy validation + scrubbing
│ ├── milestones.ts # Achievement logic
│ ├── stats.ts # Analytics calculations
│ └── excel.ts # Export helpers
└── README.md
npm install
# or
pnpm install
cp .env.example .env
Edit .env:
DATABASE_URL="postgresql://user:password@localhost:5432/hippo"
NEXTAUTH_SECRET="your-secret-here"
NEXTAUTH_URL="http://localhost:3000"
npx prisma generate
npx prisma db push
npx prisma db seed
npm run dev
Note: The app runs in frontend-only MVP mode using
src/data/mockData.ts— no database required for development. All data is in-memory with 42 pre-seeded surgical cases.
For Excel export:
npm install exceljs
Hippo is architected privacy-first:
exportSafeTransform() applied to every exportSee src/lib/phia.ts for all validation logic.
| Tier | Price | Features |
|---|---|---|
| Free | $0 | 5 cases/week, 1 specialty, basic analytics, ads |
| Pro | $29/mo | Unlimited cases, all specialties, social, benchmarks, export, no ads |
| Institution | $199/mo | Everything in Pro + multi-resident dashboards, ACGME/RCPSC exports, cohort analytics |
Urology · General Surgery · Cardiac Surgery · Vascular Surgery · ENT · Neurosurgery · Orthopedics · Plastic Surgery · Thoracic Surgery · OB/GYN · Pediatric Surgery · Ophthalmology · Other
Frontend-only mode is the default. mockData.ts contains 42 realistic cases across 12 months for Dr. Alex Chen (PGY-3, Urology). All hooks operate on in-memory state — changes persist only for the browser session.
To connect a real database, replace the mock imports in each page with Prisma queries via Server Actions.
MIT — built for the surgical education community.
Hippo — Track the cases. Build the surgeon.