Practical overview
When it fits
Use it to explore or locally develop decentralized EHR workflows that separate off-chain medical files from on-chain references and permissions.
Who it is for
- Patients managing appointments and access to their medical records.
- Doctors adding records and viewing records when a patient has authorized access.
- Administrators registering patients and doctors.
- Developers exploring an Ethereum- and IPFS-based health-record application.
Documented uses
- Register patients and doctors through an administrator role.
- Book, review, approve, reject or cancel appointments.
- Upload and retrieve medical records, with doctor access controlled by patient permissions.
- Store files and metadata on IPFS while keeping references and permissions on Ethereum.
Requirements & limits
The project is a public repository with an MIT license. Its README documents local setup scripts for Windows and Linux; the Linux scripts are also used on macOS.
- Medical files are stored off-chain on IPFS, while Ethereum stores references, permissions and related identifiers.
- The README states that encryption is not implemented in the MVP, so the architecture should not be mistaken for encrypted medical-file storage.
- Blockchain metadata is publicly visible, and the documented design has transaction costs.
- IPFS availability management and limited scalability without indexing are listed as constraints.
- The documented local setup uses Anvil, Kubo IPFS and separate service-start and contract-deployment stages.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up the local services on Linux
Install dependencies, start the local blockchain, IPFS and frontend services, then deploy the contract and seed the local environment.
Before you start
- Git
- Node.js 22 LTS and npm
- pnpm
- Foundry including Anvil
- Kubo IPFS
Steps
From the repository root, install dependencies with
pnpm install --frozen-lockfile.Make the Linux scripts executable with
chmod +x installer/linux/start-project.sh installer/linux/deployer.sh.Start the services with
./installer/linux/start-project.sh.In a second terminal, run
./installer/linux/deployer.shto deploy the contract and seed the local environment.
Expected outcome
The documented local setup starts the blockchain, IPFS and frontend services, followed by contract deployment and local environment seeding.
Guide limitations
- The guide documents local development setup, not production deployment.
- The project README notes transaction costs, IPFS availability management, public blockchain metadata, no encryption in the MVP and limited scalability without indexing.
Start services and deploy locally on Windows
Use the documented PowerShell scripts to start the local services and deploy the contract into the local environment.
Before you start
- Git
- Node.js 22 LTS and npm
- pnpm
- Foundry including Anvil
- Kubo IPFS
Steps
From the repository root, install dependencies with
pnpm install --frozen-lockfile.In PowerShell, run
.\installer\windows\Run-StartProject.ps1.If script execution is blocked, run
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypassfor the current session and start the project script again.In a second PowerShell window at the repository root, run
.\installer\windows\Run-Deployer.ps1.
Expected outcome
The documented sequence starts the local services, then deploys the contract and seeds the local IPFS/blockchain environment.
Guide limitations
- The guide describes a local development environment rather than a production deployment.
- The project README notes transaction costs, IPFS availability management, public blockchain metadata, no encryption in the MVP and limited scalability without indexing.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 11 October 2026
- Original website title
- shamil-t/ehr-blockchain · Official homepage title · retained in its source language

