Healthmint is a decentralized application (dApp) built on Ethereum for secure, HIPAA-compliant health information exchange. It connects patients, providers, and researchers through blockchain technology, enabling privacy-preserving, regulatory-compliant data sharing.
- Securely upload and manage health records
- Set detailed access controls
- Share anonymized data
- Monetize data access
- Track access history
- Discover and filter health datasets
- Purchase data with ETH
- Showcase credentials
- Follow research ethics guidelines
- HIPAA-compliant design
- End-to-end encryption
- Blockchain-verified transactions
- Explicit consent management
- Comprehensive audit logs
- Frontend: React.js, Redux, Tailwind CSS, Web3.js/Ethers.js, MetaMask
- Backend: Node.js, Express, MongoDB Atlas, Web3Storage (IPFS), JWT, Winston
- Blockchain: Ethereum (Sepolia), Solidity, Truffle, OpenZeppelin
- Storage: Web3Storage (IPFS) + MongoDB Atlas metadata
- Auth: UCAN tokens, JWT
healthmint/ ├── client/ ├── contracts/ ├── migrations/ ├── server/ └── truffle-config.js
- Hybrid storage (MongoDB + IPFS)
- End-to-end encrypted file uploads
- Consent and audit management
- Secure authentication with JWT and UCAN
- Rate limiting, CORS protection, validation
| Category | Endpoints (examples) |
|-------------------|------------------------------------------|
| Authentication | `/api/auth/wallet/connect`, `/register` |
| Health Data | `/api/data/upload`, `/browse`, `/purchase`|
| Storage | `/api/storage/upload`, `/get/:id` |
| Users | `/api/users/profile`, `/settings`, `/access-log`|
| Tests | `/api/test/mongodb`, `/test/web3storage` |
- Node.js v16+
- MongoDB Atlas account
- Web3Storage account
- MetaMask
- Sepolia ETH
git clone https://github.com/EPW80/Healthmint.git
cd Healthmint
# Server Setup
cd server
npm install
cp .env.example .env # Fill in your environment variables
npm run dev
# Client Setup
cd ../client
npm install
cp .env.example .env # Fill in API URL and network IDs
npm start
npm install -g truffle
truffle compile
truffle migrate --network sepolia
node server/scripts/deploy.js
Connect MetaMask
Register as Patient or Researcher
Patients
Upload health records
Manage data sharing
View access history
Researchers
Browse and filter datasets
Purchase datasets
We welcome any contributions to the application.
git checkout -b feature/my-feature
git commit -m "Add feature"
git push origin feature/my-feature```
- Submit request
- MIT license
