Git Product home page Git Product logo

kundestyrt2020-nav-dips's Introduction

Agnar22's github stats

Agnar22's top languages

kundestyrt2020-nav-dips's People

Contributors

agnar22 avatar aleksols avatar burgurrd avatar hanneolssen avatar hexxunset avatar mariusblarsen avatar vebxohr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

kundestyrt2020-nav-dips's Issues

Prefill document with information

What
Back log item with ID = 3.
Make a logical structuring for the fields and prefill the fields with relevant patient information from the EHR.

Why
This will form the basis of our web app, and includes a big part of the functionality for the finished app.

How
Make components, arrange and format the components, request patient info through FHIR, and fill the form with the relevant information.

  • Use the templates found in NAV's component library and combine them in a reasonable layout with fields for all relevant information.
  • Request patient information through FHIR, and prefill the relevant fields (Dependent on the completion of Issue #4)
  • [ ]

Host solution

What
Host this repository somewhere such that anyone can view our project in the browser.

Why
To be able to easily demo our app.

How

Dependencies
This replaces #15.

Setup Kafka

What
The backend should put the information on a Kafka queue.

Why
This is what NAV is currently using.

How

  • Setup kafka cluster
  • Secure kafka cluster
  • Create a dummy topic
  • Create a basic producer
  • Create a basic consumer

Setup CI

Setup up Continuous Integration using GitHub Actions

  • Setup CI for frontend

  • Setup CI for backend

Store kafka secrets

What
The backend has several secrets that needs to be secured.
These must also be accessible when building the project.

Why

How
Read the docs for Github actions and secrets, and docker and secrets.

  • Store client.keystore.p12 and client.truststore.jks securely
  • Store ssl.truststore.password and ssl.keystore.password securely

Dependencies

Open document

What
Back log item with ID = 1.
Create a basic React Web App, and show that it is in fact running.

Why
To have a good starting point for building our final web app.

How
By downloading Node and npm/npx, and running "npx create-react-app", and remove any useless parts from the example project.
If we have access to a DIPS Arena clone the web app can be rendered inside the iframe of the Arena clone.

  • Download Node and npm.
  • Create React app.
  • Remove unwanted parts from the example project.
  • Build into docker container
  • Update readme

Mock endpoint

What
Create mock endpoint such that the frontend can post the form.

Why

How
Look at how it is done in KafkaController.kt.

Dependencies

Get information about a patient from FHIR api

What
Back log item with ID = 2.
Load information about a patient into the sandbox environment through use of the FHIR api.

Why
To start the exploration of how to request and post information using the FHIR api, and hence prove that we are able to extract patient information to our application.

How
Set up a basic query to get information about a patient, and load it into the web app.

  • Make a basic query to request patient information. (Must be done before Issue #6)
  • Structure the information in some meaningful way in the web app.
  • Extract some relevant information.

Write note in free-text field

What
Back log item with ID = 4.
Create a free-text field (and possibly date pickers), that the user can fill out.

Why
The use case requires a free-text field for writing a comment, and possibly a start and end date for the period on the form.

How
Use components from NAV's component library.

  • Implement free-text field in the form.
  • Implement date pickers in the form.

Send document

What
Back log item with ID = 7.
When the form is fulfilled and the user clicks send, frontend posts to FHIR api to create a new electronic record in the EHR with the information from the form. The application will post the answer to backend.

How

  • Functionality to convert form to agreed json format.

Dependencies
Dependent on #28 and #81.

Place messages from form on kafka

What
Back log item with ID = 5.
Unmock endpoint from #28 and give the form to the kafka producer which places it on the kafka queue.

Why

How

  • Post json to backend endpoint.

Dependencies
Dependent on #8.

Save document

What
Back log item with ID = 7

Why

How

  • subtask 1
  • subtask 2

References

GĂĽ over referanser i library.bib og sjekke at de er skrevet riktig

:sparkles: **Welcome to GitHub Projects** :sparkles:

We're so excited that you've decided to create a new project! Now that you're here, let's make sure you know how to get the most out of GitHub Projects.

  • Create a new project
  • Give your project a name
  • Press the ? key to see available keyboard shortcuts
  • Add a new column
  • Drag and drop this card to the new column
  • Search for and add issues or PRs to your project
  • Manage automation on columns
  • Archive a card or archive all cards in a column

Create sandbox environment

What
Back log item with ID = 13.
Create and deploy a DIPS Arena clone and a sandboxed FHIR api to docker containers.

Why
To create a sandbox environment that facilitates/simplifies the development of the web app, and gives us an understanding of how to request and post data through FHIR.

How
?

  • Deploy a clone of DIPS Arena (or a dumbed down version with just an iframe) to a docker container.
  • Open the React app from within the DIPS Arena clone/iframe.?

Setup CD

What
Back log item with ID = 12.
Set up CD.

Why
To be able to easily demo our app.

How

  • Set up Jenkins
  • Get a URL for deployment
  • Link Github project to Jenkins

Dependencies

This is a template issue

What
Description of what should be done.

Why
Sometimes it might be neccessary to explain why this is an issue at all. And link it to other issues that might be relevant.

How
How should this issue be completed?
A list of subissues might be handy to give a clear impression of the things that needs to be done:)

  • This sub issue is done
  • This sub issue is not done

Dependencies
Is this issue dependent on any other issue? In that case you can reference it like this #2.

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.