Track and visualize your blood test results over time with AI-powered data extraction
- Open Source - Free and open source software under AGPL-3.0
- Privacy First - Everything stays on your device
- No Subscriptions - Free for personal use, forever
- You Own Your Data - Export and backup anytime
- Any Biomarkers - Supports extracting and tracking any biomarkers with any units
- PDF Upload - Drag & drop blood test PDFs for automatic data extraction
- Built-in PDF Viewer - View uploaded documents directly in the app
- File Organization - Organize your files and keep them in one place near to extracted values
- AI-Powered - OpenAI integration for intelligent biomarker extraction
- Unit Converter - Automatic unit conversion
- Data Visualization - Interactive charts and trend analysis
- Anomaly Detection - Filter biomarkers with strong fluctuations between tests
- Local Storage - All data stored locally using IndexedDB
- Professional Tables - Sorting, filtering, and inline editing with AG-Grid
- Saved Filters - Save and quickly apply custom filter combinations
- Modern UI - Clean interface built with AntDesign and Tailwind CSS
- Import/Export - Backup and restore your data anytime
- Node.js 18+ and npm
npm installnpm run devnpm run build| Command | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run typecheck |
Run TypeScript type checking |
npm run lint |
Run ESLint |
npm run lint:fix |
Fix ESLint issues |
- React 19 - UI library
- TypeScript 5 - Type safety
- Vite 6 - Build tool
- Tailwind CSS 3 - Styling
- AntDesign 5 - UI components
- AG-Grid 32 - Data tables
- Dexie - IndexedDB wrapper
- OpenAI - PDF parsing
src/
├── components/ # Reusable UI components
├── pages/ # Page components
├── db/ # Database models and services
│ ├── models/ # Data models
│ ├── services/ # Dexie instance
│ └── hooks/ # Database hooks
├── constants/ # App constants
├── types/ # TypeScript types
├── utils/ # Helper functions
├── openai/ # OpenAI integration
└── App.tsx # Root component
See .env.example for optional environment variables. The app works fully offline without any configuration.
Contributions are welcome! Please feel free to submit a Pull Request or open an issue.
For questions or feedback, reach out at [email protected]
Licensed under AGPL-3.0 - free and open source software.
Made with ❤️ and 🩸 for better health tracking