Git Product home page Git Product logo

openedc-server's Introduction

OpenEDC Server

OpenEDC is an electronic data capture (EDC) system for designing and conducting secure medical research studies based on the CDISC ODM-XML standard. The standard is adopted without modifications to foster data exchange, metadata reuse, and open science.

Quick links

About

While the OpenEDC App is a standalone progressive web application (PWA), the OpenEDC Server can be used to move from a single-user to a multi-user and multi-site research project with automated data backup. For this purpose, the OpenEDC Server provides an authentication and authorization service with a file storage. Since data is encrypted before it is sent from the OpenEDC App to the server, the server has no reading access to the data itself. It only stores encrypted files and manages access to them.

Getting Started

These instructions will get you an OpenEDC Server up and running.

Prerequisites

You need to have Deno installed on your machine which can be downloaded here.

Installing

After installing Deno, download all files from this repository and move them to a directory on your machine. All metadata and captured clinical data files will be later stored in this directory as well.

Then, download all OpenEDC App files from here and move them to the public folder within the previously created OpenEDC Server directory.

Deployment

Open your terminal, navigate to the folder where you placed the OpenEDC Server files and execute the following command

deno run --allow-read --allow-write --allow-net app.js [port] [instance_name]

Replace [port] with the port number you would like to run the OpenEDC Server at. This can be 3000, for example. If you would like to run multiple server instances on one machine, you can also specify an [instance_name]. The server will then create a new directory with all files for this instance. Do not forget to specify a different port number for each instance. If you only want to run a single instance, you can omit the instance name.

Important: If you want to be able to sync data from the OpenEDC App to the server, the server must be available over HTTPS. Otherwise, your browser will block the mixed content fetch request. If you are using HTTP, you can still use the locally hosted OpenEDC App to connect to and initialize your server. Remember to put http:// in front of the URL during the server initialization (Project Options within the App) in this case.

Contributing

Feel free to submit reasonable changes like bugfixes or functional additions. We will look into and test every contribution and will accept it in case it provides value for the general community. When you are planning to make an extensive contribution, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository.

Authors

License

This project is licensed under the MIT License โ€” see the LICENSE.md file for details.

openedc-server's People

Contributors

leogreu avatar

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.