Skip to content

A simple and fast EMR system used in low resource settings.

License

Notifications You must be signed in to change notification settings

CPSECapstone/feather-femr

 
 

Repository files navigation

FEMR - Fast Electronic Medical Records

Build Status

Circle CI: https://app.circleci.com/pipelines/github/CPSECapstone/feather-femr

Description

fEMR is a fast EMR solution for remote clinics who depend on speed and ease of use rather than complex features. Check out Team fEMR's website for more information and a live demo.

Community

  1. Slack
  2. JIRA
  3. Team FEMR

Installation and Configuration using IntelliJ IDEA:

Required downloads

  1. MySQL 5.7
  2. Scala Build Tool
  3. Java JDK 1.8
  4. IntelliJ IDEA
  5. Git

Installation and Configuration

  1. Make sure your Java and sbt environment variables are set.

  2. Fork the repository to your GitHub account.

  3. Clone the repository.

    git clone https://github.com/yourusername/femr.git
  4. See the wiki page Git Configuration for further information regarding how to contribute to fEMR.

Setting up MySQL

  1. After downloading MySQL, run the installer to install MySQL.
  2. Proceed through the installer and make a note of the username and password you set.
  3. It is recommended to install MySQL Workbench, the official GUI for your MySQL database.
  4. Run MySQL Workbench and you should see your MySQL database running as localhost. Select your database and create a new schema by clicking one of the icons on the top toolbar. Name it whatever you want, but make note of it for later.
  5. Navigate to the Session tab in the lower left corner. Take note of your Host and Port. The default should be localhost and 3306.

Setting up IntelliJ IDEA

  1. Open IntelliJ and close any active projects.
  2. A project selector window will pop up, click Configure and then Plugins.
  3. Search for Scala plugin and install.
  4. Back on the project selector window, click Import Project.
  5. Navigate to where you cloned fEMR, and click Open.
  6. Select 'Import project from external model'
  7. Select 'SBT'
  8. Click Next
  9. Ensure the Project SDK is java version 1.8, click Finish.
  10. Create a file named application.dev.conf in the conf folder, copy and paste the information from application.example.conf in it. Change the db.default fields to match your database address, username, and password that you noted before. Change the same fields in application.conf as well.

Example with database named femr, database located at localhost with port 3306, username and password both root:

db.default.url="jdbc:mysql://127.0.0.1:3306/femr?characterEncoding=UTF-8"
db.default.username="root"
db.default.password=“root”
  1. Quit IntelliJ, navigate to where you cloned fEMR, and run the following command to clean and compile the project. It is normal to have a few errors.
    sbt clean compile test
  1. Open up the fEMR project in IntelliJ again. Under Run, select Edit configurations. Create a new sbt Task and name it whatever you want. Under the “Tasks” field, enter the word “run”. Then, under Environment variables, add the following environment variables using your absolute filepath to the file: [config.file // /absolute/location/to/conf/application.dev.conf] [user.dir // /absolute/location/to/femr]
  2. Run the program from IntelliJ. Open a browser and navigate to localhost:9000. If everything was configured correctly, then you will be greeted with a login screen. Enter admin as the username and password, and you can then create new user credentials to login with.
  3. Contact [email protected] with any issues configuring IntelliJ.

Setting up weekly backup reminder

  • It is very important for the administrator to backup local data to the remote database.
  • A cronjob can be set up before a kit is deployed to automatically display a message once a week.
  1. In the command line, type crontab -e
  2. A text editor should appear.
  3. Add the following line to this file: 0 11 * * 5 <path to fEMR project home directory>/util/WeeklyReminder.sh
  4. This will display a reminder pop up at 11:00AM every Friday.

Warnings

  • fEMR is not HIPAA compliant (... yet).
  • fEMR is not meant to diagnose, treat, cure or prevent disease.
  • fEMR may attempt to establish a secure remote connection when internet access becomes available. This behavior is configurable and turned off by default.

Questions?

Email: [email protected]

About

A simple and fast EMR system used in low resource settings.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 71.3%
  • JavaScript 13.9%
  • HTML 10.4%
  • CSS 4.2%
  • Other 0.2%