GithubHelp home page GithubHelp logo

petrk94 / ownhealthrecord Goto Github PK

View Code? Open in Web Editor NEW
191.0 20.0 25.0 3 MB

This repository is about the OwnHealthRecord Application Web App

PHP 27.59% CSS 61.13% JavaScript 11.06% Hack 0.22%
medical medical-application self-hosted selfhosted php webapp html mysql health healthrecord

ownhealthrecord's Introduction

Backers on Open Collective Sponsors on Open Collective

OwnHealthRecord

This is a repository for the Own Health Record Application Web App

Developed by Petr Kirpeit

Newest update

Want to get every update without waiting for the next release? Check the Developer Log to see the latest changes, before it releases. ---> DEVELOPER LOG

Whats about?

The problem I am faced with is that each time I got a new doctor, I had to provide a lot of information manually; this led to everyone of my doctors having only a snippet of my medical records. This can cause problems, as the doctor needs my records to see my previous health, and how it is affecting my current health. Without this knowledge the doctor could misdiagnose my illness and impede my path to regain my health. For these reasons, and because the German Insurances and Doctor Software Supplier are unable to release their own solution, I have decided to make OwnHealthRecord.

When will it be ready?

I have already made a running proof of concept web app with the basic functionality, however, it is not ready for stable use and is more of an alpha release. It is constantly being changed and updated with new features so there is not set release date.

Requirements

  • LAMP Stack
  • PHP 7
  • A MySQL/MariaDB database

The web app is using PHP and MySQL, because its the most used environment you will find on nearly every server. This can be used on a root server as well as on a SharedHost or VPS.

SQLite?

For the time being I have no capacity to implement it as a separate function. If you want to contribute to it, you are welcome to open an issue and discuss it.

How to use

How do I use this?

Upload the files or clone the repo to your document root / html folder on your server, Then, create a new MySQL database on via PHPMyAdmin and import the database-structure.sql file to your MySQL/MariaDB database. This will contain the tables medicalrecords, doctors, medicine and user.

DB Connection

Go to the includes folder in your OwnHealthRecord directory and open psl-config.php, Once open, type in your database login credentials. In a future version this step will be replaced by a installer.

Important: The Secret Key must be changed by yourself, this is important to encrypt the data with AES_Encrypt

Current Functionality

  • medical-Record.php - here you can write down your personal medical record and have it display what is saved in the database.

  • doctors-list.php - here you can write and see all your doctors contact information as well the treatment time, so you will not forget when you were there and how long the appointement was.

    Example:

    Treatment period 01.2018 - 10.2018.

  • medicine.php - here you can add your medication, dose, period of usage, a link to a website with information about the medicine you are taking and additional warnings from your doctor.

Screenshot

Screenshot from V0.3

Screenshot from V0.1

Attention - Safety - No guarantee

This software is built by me, there is no guarantee that everything will work properly. It is made for selfhosting, so you must take care of the server's security and protection of the data. For the login always use an HTTPS connection with a valid SSL certificate. The database entries are encrypted, but this doesn't guarantee the data's security. The password is hashed and salted for improved security.

Your own server - Your own security

This application has to run on a secure environment, if you want to use it for production. So if you store your medical record on your own server, you must take care of your own security to keep it running secure.

For this reason, I have collected some links which provide guides to securing your server:

License

The Application is Open Source and can be used for private/individual purposes for free. The usage of code which is not listed below "Third Party Libraries/Code/Sources" for commercial interests is restricted and only legal after my approval, any other commercial usage is prohibited.

Third Party Libraries/Code/Sources

The Dashboard theme, developed by Creative Tim is the Paper-Dashboard and is licensed by Creative Tim under the MIT License.

The account and login functionality was developed by Github User peredurabefrog. His phpSecureLogin script is very helpful for the implementation of the account functionality and protection of information. Here is the code explanation: https://www.wikihow.com/Create-a-Secure-Login-Script-in-PHP-and-MySQL

The AES_Encryption code is based on this tutorial: http://thinkdiff.net/mysql/encrypt-mysql-data-using-aes-techniques/ by mahmudahsan

https://www.w3resource.com/mysql/encryption-and-compression-functions/aes_decrypt().php

Roadmap

Planned Featues

  • Ability to upload files with medical file extensions (https://en.wikipedia.org/wiki/List_of_file_formats#Biomedical_imaging)
  • Health Check reminder
  • Reminder for vaccination (+ emailing function)
  • Timeline/log page, see all updates in your account (updates in medical record, uploaded images, reminder for health checks)
  • Multi User functionality
  • API

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers! ๐Ÿ™ [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

ownhealthrecord's People

Contributors

monkeywithacupcake avatar petrk94 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ownhealthrecord's Issues

File not found or 403 error

Found this posted on Reddit and looked interesting. I'm running into these errors at the moment:
File not found and 403 File forbidden

I am installing this on a RPI 3 with a LEMP Stack, PHP 7, and MYSQL. Followed the Readme.
Will this run under a subdomain?
Do you have an example of an NGINX conf?

It's probably something simple I'm missing, but any help would be appreciated.

Blank page

This is great app to try but sadly it gives me blank white page with no errors anywhere on latest nginx, php8 (both 8.1 and 8.2). Any ideas where to dig?

Docker, because it's effectively the universal package manager.

I was thinking about contributing a PR with Docker

Is it possible to get full instructions for how you generate the releases and details about what you're using to run this?

If so I can convert the instructions into a multi stage docker container and potentially a Travis CI job that can build upload and release/test your git pushes.

This isn't high priority for me so it may take a while but the faster I get a response the more likely it will be that it can get done.

Question - install without phpmyadmin

Would it be possible to include instructions on how to install without using phpmyadmin? I've been looking for a project like this and would love to try it however I don't have phpmyadmin on my system(Ubuntu w/LAMP). Is there a way to use command line instead? Thanks.

Installer doesn't change username/password

Hello there, I've tried installing ohr on RHEL 8, php 7.2 mariadb 10.3.10, and ran into an issue in which the installer didn't change the default username/password for the database, and hence didn't import the database creation sql file, also it didn't return errors !
I've fixed it by manually editing includes/psl-config.php and importing database_structure.sql into the database, in case you don't have the time to fix the installer, i believe creating an installation readme would be useful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.