A Rails 7 application styled with Tailwind CSS that interacts with a FHIR server to fetch and display patient information.
PseudoEHR is a reference implementation client application for the PACIO Project use cases.
- FHIR Server Integration: Connects to FHIR servers to fetch and cache patient details.
- Patient Display: Shows a list of patients and individual patient details.
- Server Authentication: Handles FHIR servers that require SMART-on-FHIR App Launch for Symmetric Client Auth.
- Ruby version 2.7.5 or higher
- Rails 7
- PostgreSQL
- Memcached
Make sure to start PostgreSQL and Memcached before running the server.
-
Clone the Repository
git clone https://github.com/paciowg/pseudo-ehr.git cd pseudo-ehr
-
Install Dependencies
yarn install bundle install
-
Database Setup
rails db:create rails db:migrate
Note: This should only be executed the first time you clone this repository.
-
Starting the Server
./bin/dev
Open your browser and navigate to
https://localhost:3000
. -
Connecting to a FHIR Server
- Navigate to the root path.
- Select a FHIR server from the list of saved servers or enter your FHIR server details and connect.
- Once connected, you can view a list of patients or see details of a specific patient.
This application uses RSpec for testing.
-
Running the Test Suite
bundle exec rspec
-
Factories
We use
FactoryBot
gem to mock objects for testing. Check thespec/factories
directory for defined factories.
Please read the Contributing to PseudoEHR guide and our Style Guidelines.
This project is licensed under the Apache License. See the LICENSE
file for details.