ELEXIS-SERVER The swiss-knife cuts it in Switzerland Marco Descher <[email protected]> | FhirDevDays 2018
ELEXIS-SERVERThe swiss-knife cuts it in Switzerland
Marco Descher <[email protected]> | FhirDevDays 2018
THE ELEXIS PROJECT
• Provides (open-source) solution for requirements of a swiss medical practice
• Started in 2005 by a swiss physician
• Commercial product available, based on open-source core (EPL)
www.medelexis.ch
„ELEXIS-UI“
• Based on Eclipse Rich Client Platform
• Productive 2-layer-application
• Dozens of plugins to handle requirements of the medical practice
ELEXIS-SERVER (ES)• OSGI based server with JPA persistence to replace 2-layer-
architecture
• Provides (selected*) FHIR (using HAPI-FHIR) and OpenId service(s)
• Enables medical practice to provide self-sufficient Smart-On-Fhir service
• FHIR first approach; remaining API → Swagger
Kudos to you guys!!
* Lazy-Implementation-Pattern
WHY OUR OWN S-O-F SERVER?
• Retain data control within the medical practice
• Enable opt-in interoperability for existing installations
• Enable peer-to-peer FHIR with full control on each premise
ES BECOMING S-O-F• OpenId integration via maven-overlay
• Connecting to Elexis database
• Extending login with TOTP 2FA
• Implement HAPI-FHIR resources
• Mapping our own model to FHIR
• Add the SMART-on-FHIR profile
• Packing it all as OSGI bundles
https://github.com/elexis/elexis-openid-connect-overlay
PHYSICIANS WORKING STACK
• Use Elexis-Ui to work and configure users allowed for FHIR access
• Use the apps provided with their own server
FHIR DEVELOPERS WORKING STACK
• ES is distributed either via source, installable product or docker image
• ES Vue.js plugin for easy app creation
VUE.JS ES PLUGIN
• Adds a route guard, all routes are blocked prior to login
• Provides static pre-configured accessors for FHIR ($es.smart) and Swagger ($es.swagger) to access resources
• (will…) provide/include things we learned here!https://www.npmjs.com/package/@col.panic/vue-es
DEMO
• Setting Your a physician, that wants to check his appointments from home…
• I already prepared that for you, just gimme a minute…
WANNA TRY AT HOME?
• Get ES demo server up and running docker run —rm -e TZ=Europe/Zurich -e DEMO_MODE='true' -h „es.localhost“-p 8380:8380 -p 8480:8480 -p 7234:7234 medevit/elexis-server
• Create Vue.js based demo app to list patients
• Authorize (OAuth) App on ES
https://github.com/elexis/elexis-server/wiki/Installation-and-setup
https://github.com/elexis/vue-es-demo-app
LINKS
• http://elexis.info/en_index.html
• http://www.github.com/elexis
• https://www.npmjs.com/package/@col.panic/vue-es