2020 Notes & Recordings

2020-12-17: Updates on current Forms Plan, whitelabelling, Registration page, and general 2021 direction

Recording: https://iu.mediaspace.kaltura.com/media/1_i9hugzif

Attending: Nikita, Grace, Eric, Dimitri, Brandon, Eudson, Jonathan Teich, Burke, Larry, Donald, Daniel, Romain, Tendo

  • Whitelabelling plan for January
    • Simple. Focus is showing in January what it would look like to change just a few things. (One day might be nice to have a module that could add some pre-config'd style sheets.)
    • Goal: easy for non-tech person to configure in Implementer Tools.
  • Registration Page Work
    • Reg Page Configuration needs to be sorted out asap so we can complete this page
    • Brandon and Larry working on this; has been complex; trying to support the many ways that Implementers may need to customize it
  • Forms Plan at the Moment
    • Focus now will be on integration of HFE for backwards compatibility; Nikita focusing on supporting that. Quickly demonstrate we can run HFE forms somewhere in our framework.
    • LHC forms: Off the table for now. Requirements not clear enough. Might be possible if there's a useable layer under the Angular code driving the frontend. Concerning that the FHIR model seems unstable. Follow up planned between Burke, JJ, and Clem (head of LHC forms).
    • Bahmni Forms2: Also off the table for now. There's core Bahmni tech debt to address and not enough collaborative resources to do so. Would require dismantling Bahmni core, extracting into separate module, and then there would still be FHIR things to do.
    • Ampath forms: not off the table.
    • Plan: Make it work with the quick solution first. Then, lean towards something better integrated.
  • Test Results viewer
    • This is the next big deliverable we should be seeing in the new year. Nikita likely will work on it.
  • Frontend Architecture
    • Brakes on changing Architecture! 2021 is about delivering, building on what we've done
  • Attachment Module
    • Plan: Extension via attachment-esm; Samuel will be working on this

2020-12-10: Squad call, GitHub Actions update/demo, LHC forms demo

Recording: https://iu.mediaspace.kaltura.com/media/1_mddh30rz

Attendees: Burke, Grace, Paul Lynch, JJ, Nikita, Ajay Kanduru, Brandon, Ciaran, Daniel, Dennis, Dimitri, Donald, Eudson Bambo, Florian, Ian, Jonathan T, Samuel, Romain

GitHub Actions Update/Demo

See example: https://github.com/openmrs/openmrs-esm-patient-chart/pull/198/files Note that linting issue is immediately visible in PR thread

LHC Forms Demo/Discussion

Special Guests: Paul Lynch, Ajay Kanduru, Eudson Bambo, Ye Wang

  • Go to lhcforms.nlm.nih.gov (note that LHC-Forms Widget isn't FHIR based - no pre-pop; just core-rendering, b/c created before FHIR)
  • We're missing/craving the FHIR-based approach to forms. Good to produce the FHIR Qnr.
  • What's the underlying schema to represent the form? Core representation is FHIR. 
  • Form Builder Implemented in AngularJS? Yes.
  • Clinical Table Search Service
  • Useage in production systems: Used at Regenstrief & a Chronic Disease project at ___. May be in production systems they don't know about b/c it's open source.

The way FHIR envisions this working is that the questionnaire corresponds to a questionnaire response, which is just values linked against the questions defined in the questionnaire, but that the backend can do additional processing from the questionnaire response to generate the linked resources. Basically, forms are a two step process: the data collection and processing that data collection. Only the first seems really defined by LHC Forms. So there's a large degree of mapping the data meaningfully that we'd still need to handle, but with some additions to the FHIR2 module we should be able to make that roughly as easy to do as it is in any of our form building tools


2020-11-26: Grid layout & Grid view widgets, 

Recording: https://iu.mediaspace.kaltura.com/media/1_ug1o4e5k

Updates:

  • Donald - Vitals and Biometrics widget grid view: 
  • Dennis - Grid layout 
  • Florian 
    • Big live development session!
    • tl;dr - Showed the tech Framework in great detail (smile) 
  • User Testing the Test Results wireframes - to Start Wednesday next week

2020-11-19: Squad Updates: Forms2, Registration designs, Clinical Views designs

Recording: https://iu.mediaspace.kaltura.com/media/1_ghm1g6p8

  • Forms2: Nikita and Florian have begun work on Bahmni Forms 2; call tomorrow with Angshu to go over approach and agree on architecture. (Goal is to have mf-ized Forms2 by the end of the year so that Forms can be created in Forms 2 and then displayed, used, and submitted in our 3.0 Frontend beta; may not be robust by end of year.)
    • Want no forking; goal is collaboration & shared goal/resource. 
  • Demos: JJ leading demo with UCSF next week. (smile) 
  • Eric away Nov 23-Dec 8
  • Registration designs discussed
  • Clinical views designs discussed

2020-11-16: Sprint planning

Attendees: Burke, Brandon, Daniel, Dennis, Dimitri, Donald, Eric, Florian, Grace, JJ, Larry, Nikita

Overall Sprint Plan: Complete implementation of the new designs so that our prototype has an end to end patient visit workflow.

Prioritize: Registration, Vitals, generic Form, and Summary page.

Wireframes here: https://app.zeplin.io/project/5f7223cfda10f94d67cec6d0

Board here: https://issues.openmrs.org/secure/RapidBoard.jspa?rapidView=231&view=planning.nodetail&selectedIssue=MF-332&epics=visible&issueLimit=100

Encouragement that Devs in EAT contact Florian, Nikita throughout the week - don't wait for Thursday calls. They are especially available in the morning. 


TODO: Florian and Nikita to f/u w Ciaran: We need more flexible guidance so it's not so explicit pixel sizes. And, it needs to specify what components of Carbon are being used, so the dev can use as much as possible directly from Carbon (not custom CSS instructions).

Defer to Carbon first to set the terms

Is Carbon integrated into Zeplin, or Sketch? (E.g. in AdobeXD their designers could say "I want this button from this UI framework to be placed here" so in styleguides/css guidance it clarified "button type: primary")

E.g. what Carbon tool is this: 

Is the info being lost in Zeplin transition?


2020-11-12: Sprint Demo: Carbonizing Registration page, widgets, and changing language; Design Updates for Test Results, and Developer Guide to Developing a MF Distro 

Attendees: Dennis, Donald, Grace, JJ, Ciaran, Daniel, Dimitri, Eric, Ian, Larry, Jonathan Teich, Nikita, Samuel, Brandon

Recording: https://iu.mediaspace.kaltura.com/media/1_1a8ut7b9

Announcements/Updates:

  • Welcome Nikita from Smapiot (Florian and Nikita are taking over Manuel's work)
  • Monday: Sprint Planning - focus on converting 
  • Meeting w/ Bahmni technical team Tuesday next week to talk about collaborating on microfrontendizing work moving forward (namely on Appointments and Forms2)


Demos

  • Implementing Carbon in Relationships Search - Larry
    • Checked relationships via API query: 
    • Carbon was straightforward: npm install the library, then import the components like you would import other components like React. Documentation wasn't so clear, even misleading: e.g. auto-suggest component, but reading more, it was just a pattern sharing how people usually use the search box; they didn't actually ahve this implemented; this took time
    • Next: Carbonizing the whole registration page ongoing.
  • Implementing Carbon in Registration Page - Donald
  • Carbonizing widgets - Dennis
    • Empty state and Error state designs implemented
      • MF373
      • Carbon: Finding he can move faster now, and faster than with previous style guide; but some edge cases: e.g. compiling 
  • Translations - Dennis
  • Config Tool updates - hover state to show Name - Donald
    • Tooltip showing extension slot name - would be nice to see value too
  • Extensions Slot: Florian
    • Don't need to use attach function anymore
    • Next: bringing extensions to the global state container. Can connect the tools directly to that container. 
    • Forms 2 - no work yet; frontend logic split between two repos and intermangled with each other. Need to find solution to restructure that code so it can be frontend facing the way they need it, but so on the other hand, we can cherry-pick from the visual components.

Design Updates: Results Page


Documentation Update: Developer Guide for MicroFrontends

2020-11-09 - Live demo of the Gopher Teaching EMR chart search

Recording: https://iu.mediaspace.kaltura.com/media/1_bi91ne13

2020-11-05 - Demos & Updates

Recording: https://iu.mediaspace.kaltura.com/media/1_2xsl04e0

  • Plan for UI improvements to the implementer tools?

Attendees: Burke, Dennis, Nikita, Ciaran, Daniel, Donald, Dimitri, Eric, Florian, Ian, Larry, JJ, Jon Teich, Kim Oxlund, Mike, Romain, Grace, Samuel, Sharif

  • Welcome Nikita developer, will be working closely w/ Florian also on Forms 2 engine
  • Demo of updates to Dev tools config - Florian - can turn on/off settings
  • Demo of Drug Ordering progress - Florian
  • Update of Carbon Design System integration into Patient Summary - Dennis
    • Using Carbon was smooth; Tutorials on Carbon's website were really helpful 
    • Seeing error because Immunizations not yet fully supported by FHIR2
  • UX Update
    • All user feedback details now really small
    • Still working on workflow for jumping between tasks, like between Visit Note vs Order Basket
    • Need support for backend auto-saving
    • Nikita and Florian to start implementing 
    • Before & After video to share with OMRS Community the design progress: "The MFE squad has been working hard to create a frontend that's extensible; this is what we're now working with. We think this has great potential and want to share how things are looking. We want to know we're meeting key needs - Join us..." Most recent video is in slack. Video Script - Grace & Ciaran to follow up. 

2020-01-02 - Product Design Session

2020-10-29 - Demos & Updates

  • Time Zone changes coming this weekend to EDT â†’ EST, and PDT â†’ PST. Proposal: shift forward 1 hr UTC due to other calls as well.
  • Manuel - presentation of latest Order Entry dev work
  • Manuel - presentation of early tech to enable building microfrontends without dependencies
  • Ciaran - summary of feedback from User Testing
    • 3 user tests this week of patient visit workflow
    • Difference between data you record once, vs things that change more frequently
    • Being able to see relationships and their HIV status - if known to the system, could you jump into their pt chart if they present as a family unit at the clinic
    • Wanted to see if pt has any Mental Illnesses
    • Recommended Actions were great but wanted to see them at the end of the visit as a double check before ending the visit
    • Order Entry - wanted to see who wrote certain notes
    • Appointment Scheduling - visualizing what it looks like when a user misses an appointment
  • Grace - Pitch to pilot using GitHub issues: https://docs.google.com/presentation/d/1HL0vh_edTrwGLbbLEo6jjFcackquwREsoC9gREIXqps/edit#slide=id.g8bb4aa155a_0_10


2020-10-19 - Design Call: Med Order Workflow Updates, Identifying Features Ready for Development

Attendees: Burke, Ciaran, Grace, JJ, David, Eric, Ian, Romain, Sharif

Recording: https://iu.mediaspace.kaltura.com/media/1_emn474p8

Med Order Workflow Updates

Tablet or Strength based order flow? We think we need both. 

Need to set up next set of user tests to start next week. 


Identifying Features Ready for Development

  • Vitals entry
  • Focus on widget/tile/form-level features

Action Items

* Grace & JJ - get example medication orders for Ciaran that will act as test cases for whether order entry design captures needs


2020-10-15 - Order Entry Update, How to Release, and Design Updates

Recording: https://iu.mediaspace.kaltura.com/media/1_tq1z6c3r

Attendees: Burke, Brandon, Daniel, Donald, Eric, Florian, Grace, Ian, JJ, Manuel, Mike, Sharif 

Global State demo - Florian


Order Entry Update

Manuel - Order Entry - improved search experience, pagination, free text dosage, can now edit dose, Fixed duration and Rx refills so can't be negative value

Next - implementing changes in designs, connect floating order basket with reality

Can even search by dose and frequency

Drug info being pulled from REST API (not FHIR - dosing format, pill sizes, durations, doesn't have support in FHIR yet)

Concern: Using JSON as drug search endpoint. This was made to help make UI faster to prefill based on common order patterns, but search should probably hit the endpoint on OpenMRS. 


Process for adding code.

  1. PR
  2. Discuss it
  3. Merge
  4. Make a new release

Brandon: I encourage the use of https://github.com/github-changelog-generator/github-changelog-generator for generating release notes. It'll create a CHANGELOG.md. You can just copy-paste the section corresponding to the latest tag.

https://github.com/openmrs/openmrs-rfc-frontend/blob/master/text/0022-versions.md - see recommendations related to toggl

Maybe control esm-core releases tightly? Plan: do a release at the end of each sprint (at end of demo call, publicly viewable so people can see and learn).


UX Update

2020-10-08 - Check-in Call

Recording: https://iu.mediaspace.kaltura.com/media/1_8ko04td3

Attendees: Burke, Manuel, JJ, Florian, Dennis, Ashutosh, Brandon, Ciaran, Daniel, Dimitri, Ian, Bett, Samuel, Mona, Mpho, Nicky K, Romain, Tendo, Thomas Mwogi, Vlad Shioshvili

Agenda:

  • Demos
    • Manuel - Order Entry 
    • Florian - access app shell and customize package via command line tool
    • Dennis & JJ - Configuration tools. Lookups with 
  • 10 mins - Ciaran Demo
  • Review work to be done for Registration Epic
  • Guidance re. using custom CSS vs using Design System. Almost everything in Carbon Design should be there; sometimes it's not named what you'd expect. Should avoid inventing new stuff - avoid custom CSS. Question whether writing custom CSS is really needed or whether it's buried somewhere in Carbon Design

    • How to use esm-style guide now
  • Test Results Viewer
    Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • Update on appointments (low priority but promised update to Bahmni about) - adding in a few slots for appointments

2020-09-28 - Design Call - Medication Order Designs Update

Attendees: Burke, Grace, Daniel, Florian, Eric, Romain, Ciaran, David

HIV Clinic Workflow shadowing: Eric and Ciaran to set up virtual workflow tour for Ciaran in HIV clinic (with no patients around and fake data) so Ciaran can experiense end-to-end clinic workflow in patient's shoes with sample/fake data entered for him as a patient by each user role type.

Check with community (big implementers) how did they handle Drug Orders - pick only, or create custom? Request goes to add to formulary / drug table, or do you allow custom entry?

Awareness that MVP scope does not include integration of orders with pharmacy system. Without integration this may become an issue with go-lives (re. clinicians having to duplicate digital and paper orders). At PIH, digital orders right now are "not real orders" because you manually write the Rx for the patient to take to the pharmacy. Dispensing workflow not connected to any workflows. Printing the Rx - not realistic for pilot site locations.  (JJ note after: Ampath planning to push orders into pharmacy system in near future.)

Decisions:

  • We'll be using a formulary-style workflow in Drug ordering (i.e. as a clinician, I don't just say "I'm ordering Aspirin"; I have to specifically pick out "Aspirin 81mg" or "Aspiring 325mg".)
  • Custom Drug creation is not in-scope for MVP. Sites will be encouraged to keep the Drug Table up to date.

2020-09-24

Attendees: Florian, Donald, Dennis, Burke, Brandon, Ciaran, Daniel, David, Grace, JJ, Samuel, Mike, Mona Fenzl, Romain, Brandon, Eric

Demo:

  • Donald demoed progress carbonizing header nav 
  • Florian demoed the carbon designs that he has adopted for the medication orders. Working medication orders with data flows working. Working on enabling widgets as extensions and host the medications/drugorder widget via this mechanism (pull #179) Planning to introduce widgets as extensions soon. Currently supporting both old and new approach to extensions.


  • Brandon demoed on making extensions configurable. He made the reports button an extension.

  • Dennis demoed on on the chart summary translations.
  • Dennis demoed ongoing work to show a UI Editor that enables editing the config and extensions, and highlights the section the user is editing.
  • Ciaran gave an update - He has been doing user testing with the designs and some of the suggestions were: include some vitals and allergies to be easily viewed on the order entry page. He also demoed the designs he has for the visit workflow. He also will find a way of how the vitals for today's visit will be displayed (make it collapsible)
  • Ciaran will share links in slack to the sketches where people can add comments and suggestions.


2020-09-17 - Demo ongoing work - order entry designs, carbon styling

Attendees: Larry, Brandon, Burke, Mike, Daniel, Donald, Florian, Ian, JJ, Samuel, Manuel, Romain, David, Dennis, Mona, Grace, Eric

Demo:

  • Ciaran shared some of the designs he has been working on and they are ready for user testing.
  • Brandon updates – Working on extensions and configurations. Currently working to make extensions configurable.
  • Donald did carbon styling implementation demo on the allergies widget. He will create a PR for the patient chart widgets carbon styling.
  • Manuel – Did a demo for drug orders and he has introduced carbon styling. He will continue implementing in drug orders. while awaiting for wireframes that Ciaran is working on.
  • Samuel – Did a demo for editing patient demographics data.
  • Larry  - Did a demo of adding configurable support for additional patient attributes.

To Do

  • Florian to create tickets in JIRA for domain decomposition.

2020-09-15 - Virtual HIV visit workflow using POC

Attendees: JJ, Ciaran, ERic

  • JJ aasumed the role of Clinician and took Ciaran through the HIV workflow in AMPATH POC. Important was to capture the medication order concept.
  • Eric also took Ciaran through the process of patient registration and program enrollments in AMPATH POC.

2020-09-14 - User testing process - Order entry

Attendees: JJ, Burke, Eric, Ciaran, Mike,  David, Daniel, Ian, Jen, Samuel, Dmitri

Notes:

  • User test workflow
    • Ciaran will spend 90minutes with a user with three different workflows, i.e:
      • Speak to the users at the beginning of the conversation and ask them some questions.
      • Present the designs and walk through with the user
      • Towards the end of the conversation, allow user to ask questions. (3 major workflows)
  • Reviewed the latest designs for order entry that Ciaran has made
  • Ciaran is 75% done with the order entry clickable designs and should be done soon - in the course of the week - for user testing to begin.
  • To Do's
    • Eric to organize for a call with Ciaran and one of the clinicians at AMPATH to go through the AMPATH workflow of order entry.
    • Ciaran to come up with a plan for the user testing.

2020-09-14 - Sprint 5 planning

Notes:

  • JJ clarified that the patient chart and patient chart widgets tickets for carbon integration styling will have to wait for Ciarans prototypes in order to proceed. The tickets will however go into sprint 5 once the designs are ready.

2020-09-10 - Squad Check-in and Sprint Demo

Attendees: Burke, Donald, Manuel, Ajay, Brandon, Ciaran, Daniel, Dennis, Dimitri, Eric, Florian, Larry, JJ, Romain, Samuel, Tendo, Grace

Recording: ___

Notes:

  • Sprint Demo
    • Medication Order entry widget demo, using extensions system, demo'd by Florian and Manuel
    • Progress Carbon integration into styleguide, demo'd by Donald - started w/ fonts and warning messages
    • Progress making buttons extension-slot-based, demo'd by Dennis
      • Extension slot demo/explanation by Brandon
      • Link gets placed into an extension slot. So expect to be using/seeing divs a lot (smile) 
  • Test Results Update
    • Basic table display being built
    • Test data from PIH/Ellen going to be incorporated into designs and what they're building
    • Brandon to help unblock them with screen not displaying
  • General Design Updates
    • Designs for order entry: _______
  • Product Management Updates
    • HIV Outpatient Clinic Workflow goal; documentation progress here: HIV Clinic Workflows to Support: Ampath, PIH Mexico, UgandaEMR
    • Jira: Using Epics to capture and delineate widgets work, still have one place of working together while different global teams pick up different work
      • See backlog view: https://issues.openmrs.org/secure/RapidBoard.jspa?rapidView=231&projectKey=MF&view=planning&issueLimit=100 
      • Special mention: 
        • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  
        • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
        • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
        • Question: Is an extension same as what we've been calling a widget? Let's pick a name and be consistent.
        • Bahmni Forms Epic?
    • Grace & Eric: Raise question about tickets, i.d. Eric as person who will be following up with Squad Devs - we want to know how to help, and this helps us understand what's going on
    • Eric to lead Cycle Planning call on Monday (smile) Using Board view & Sprint view in Jira
  • Goals for Next Sprint - sounds right?
        1. Extension (needs breaking down)
    • Carbon integration into styleguide
        1. Need to get 1 & 2 sorted to move forward with the others
        2. Roadmap for how to transition our existing features to the visuals in latest designs using Carbon
      1. Domain decomposition(needs breaking down)
      2. Designs ready and tested for Global Navigation (ideally start work on it this sprint)
        1. User testing: need a way for clients to look at mockups and provide feedback. Talk about process on Monday in Design Forum at 4pm UTC.
      3. Appointment Scheduling or Forms?

2020-09-08 - Design Session


Test Results Updates

Ellen and Ajay had a call about Reference Ranges. Ranges just per-lab-result. Absolute High, Critical High, Normal High already built-in, per test.

David to share PIH EMR end-to-end HIV Clinic workflow with Ciaran/Grace/Eric/Daniel on Thursday.

Reviewed latest wireframes from Ciaran


2020-08-31

Lab Results updates

  • Dev work beginning this week at ThoughtWorks, led by Nori Krishna
  • User testing plan included
  • Nori to check that Carbon Design is used
  • TODO: Grace - Access for Nori to JIRA - epics proposal; People to add

PIH

  • PIH Planning technical roadmap; deciding how to use MFE work moving forwards. Has anyone recently done inventory of what we have, the functionality that's already in SPA?
  • Whether we're iterating on it
  • TODO: JJ/Grace/Eric: Documentation of what's been done/in progress in SPA/patient chart/etc, the status and completeness, design status, etc; follow-up with Dave about this

Ciaran's work

  • User Interviews: Looking for clinician users on front lines who can share their screens to support research
    • TODO: List of people Ciaran can reach out to - ideally users with a few different contexts
      • "We would like 1-2 clinical providers who are regular users of your OpenMRS implementation(s) in delivering patient care to help work with a UX designer to help inform our frontend framework design. They will need to be able to join up to X Zoom calls lasting about Y minutes."
      • User(s) designated by:
      • Aim to get representations of doctor, nurse, community health worker
  • Napkin Sketches: Looking for manual hand-drawn sketches of what people are expecting a given piece to look like

Search Bar

2020-08-27: Demos of ongoing work: identifier generation, extensions

PM Eric: Introduced Eric Achillahas new squad PM. Will be involved in planning and coordinating sprints and user testing, w/ support from Grace & JJ. Welcome! (smile) 


Discussion re. possible need to have style guide. To guide the how to use Carbon Design in the OMRS setting. 


Demos

Identifiers - Samuel

How to help user with auto-generating a user id

Discussion on the different Patient Identifier types - there are multiple different OMRS IDs: 


Extensions demo - Brandon

2020-08-20: Sprint review & extensions discussion

  • Address templates & validation done
  • Unique identifiers discussion
  • Extensions presentation (see PPT here!)

2020-08-10: Design Call

  1. Implementer UX for Extensions
    1. 90% of apps made will be made for local usage. (smile) 
      1. Widget comes by default with app, you don't need to configure it. 
      2. Extension points: will be for specific extensibility; apps will not subscribe to a "class" or "type" of extension point
    2. Ideally if I install a module, the config is set up automatically. Don't want to depend on some tooling to manually update a config file.
    3. Widget implications: "I turn on an HIV widget, HIV things are then available elsewhere as well"
    4. Definitions: 
      1. App = Space in single-page application that has things available elsewhere. A vertical solution to an issue (I have a problem, app solves it). There are settings I can adjust. e.g. Diabetes app: might add or make available a new widget for my patient dashboard that is diabetes-centric. Avoid places where you'd need to write code to adjust basic settings.
      2. Extension = Extend the app by adding additional relevant things (e.g. HIV-related headings in the navigation)
    5. Extend at widget level?
      1. Add extension points where they're useful, not because there might be a use some day.
      2. Discovery model - without having to go through my settings I can see this extension is available to me to add; they were made automatically available to me because I added the app.
    6. 3 central questions:
      1. 1. Implementer interface or JSON-only?
    7. Need more people from on-the-ground implementations to weigh-in - b/c this is about their user experience.
    8. TODO: Brandon (& JJ & Burke review): Document description of different options, and implications for an implementer using the platform. Then can run this by on-the-ground implementers.
  2. Design
    1. tl;dr takeaways: Picking a Design System helps us right away, but later when breaking changes are introduced, massive scale of updates needed. (Though - this could be a good clear task for the community to fix.)

      So: Select a design system to follow its patterns & set standards, but not to import into our code. Need mechanism for creating shared components. Sharing components across different teams. (e.g. Zeplin). Commit to a given look & feel, use the CSS from a Style Guide for all things that are already there - so vast majority of dev time is not spent creating UI elements. For things people couldn't find, we direct them to a shared Style Guide (like our own appendix) where people can share what they've custom-built where it wasn't well represented in the Style Guide.

      • So (1) go to 3rd party Style Guide website for guidance; if you don't find something that really meets your needs, (2) go to supplemental OMRS website to see what others have adapted specifically for OMRS.
      • Some people would copy-paste from somewhere else and adapt it and share it there. Like the weird case of a button that has a drop-down menu built in when you click it. You might want to copy the CSS from the 3rd party, but adapt it, and then share it for other OMRS contributors to pull from.
      • Problem: This requires people becoming good at CSS up front rather than just importing.

      Confusion: what a pattern is and where the designers document that.

      TODO: JJ F/u with Ciaran. Start w/ next week?

  3. Test Results
    1. TODO: JJ/Brandon: Test Results Repo creation for ThoughtWorks team to start working in (Krishna leading)

2020-08-07: Insights from Ajay Brar re. Style Guides vs Design Systems


Caveat: From context of client sites, not open source environments.

You still have to style

  • Not opposed to DS. Has seen they introduce dependencies. Patches can be security related as well as usability etc etc.
  • Bootstrap - found class naming difficult; wanted something very very lightweight. Switched to Foundation (can choose to just use CSS) and only used a few components
  • With CSS/Global CSS, very easy to change if tomorrow you wanted something different
  • What do you get in return?
  • Clear building block guidelines
  • Could achieve w/ visual style guide. But advantage of DS is instead of having 5 different implementations of a button, you get 1-button-code used across. Normally great but it's no longer "your" button
  • Bulk from Flexibility = most difficult part
  • e.g. button in Material: made to be extremely generic. ++ properties to allow changes; we may only need to use 2. 
  • Loading in code that 1/2 the time you don't know what it does
  • Restricts you from adapting button further (e.g. with dropdown underneath it) - then you have to create custom UI components. (e.g. even Google doesn't use Material across its own applications)
  • Bloat
  • some allow you to chose what gets included vs what doesn't (don't have to include all the UI elements) but some don't have that capability
  • est. 25-30% ^
  • Handling Information Architecture (this should be laid out like this)
  • Can say "follow Material guidelines the way they structure things" - e.g. "a text field should have labels on the left rather than on top"
  • Security
  • Anytime you have a JS library, have potential for security issues. e.g. pre-built React components. Not difficult to inject malicious code through JS.
  • Having a CSS-only Style Guide would meant this isn't a concern - but that means you're not chosing a Design System (b/c whole idea is reuseable component library)
  • Maintenance
  • Idea of defining in design tool: Create button standards in Sketch, Figma etc, let that platform generate the CSS, so you're not dealing with patches/things that can break
  • e.g. Sketch sticker sheet
  • How do we make process of sharing code simple?
  • Shared code repo
  • Need to i.d. who owns it, who's responsible to maintaining it


2020-8-03 Design Call


Introducing Lousa Sheenaz - Palladium Kenya (HIV prevention, care & treatment)
Style Guide evaluation update

  • TODO: Grace F/U w/ Ciaran re. absence of card view; expectations re. design system selection work; further detail re. his thoughts on Bootstrap
  • TODO: F/U w Bahmni - what do they use?
  • TODO: F/U w/ jr dev volunteers - + book wrap up


Comes down to: Is there a better choice for OMRS than Bootstrap?


2020-07-27 Condition Widget - Modelling Design Call

  • Could make sure that FHIR2 module captures business flows w/ existing API
  • Can't build on existing condition modelling in RefApp due to tech issues and workflow/use case issues
  • If RefApp 2.11 was shipped w/ OMRS Spa, could new condition list be included out-of-the-box? Yes.
  • Easiest would be if we could ship a version of the RefApp where one of the modules has some of the MFE artifacts; module can deploy taste of MFEs without having to set up separate docket container etc
  • Develop on SDK itself? 
  • Issure around FHIR "active" status - active for patient vs active in clinician's current review? Active lists were meant to help handle adding and removing conditions to a list.


How can MFE Squad support, in general and in Sprint 3?

  • Items should go on/off list; remove with single click; have undo
  • Take current condition compontent in MFEs and make work against FHIR API
  • General Goal: Get conditions working in MFEs with aim to take component and intro into RefApp


Next Steps

  • TODO: Mark: Log bug tickets with clear descriptions around need to fix the API so it uses the UI correctly; flag Ian and include in FHIR2 Module release project
  • TODO: Sprint 3: Ian and Brandon support: Get current MFE condition component hooked up to FHIR API
  • TODO: Grace: Clean up Wiki page & talk posts for condition lists - compare to what exists, document tickets & share w/ Mark & Burke for review


2020-07-23


  1. Announcements
  1. FHIR2 Release: Mid August. Should cover 70-80% of data in OMRS systems. Resources, ability to create/update/delete resources, ability to do complex searching for those resources. "Almost as much FHIR support as EPIC".
  1. ThoughtWorks Intros: 6 devs from Germany joined MFE project over last week. Availabiltiy can change w/in a day; so recorded onboarding calls as a future resource. Cards picked up by pairs. 
  1. End of sprint 2: Demo/share our work together
  1. PRs re. extensions - see here if you want to see ongoing discussion: 
  1. https://github.com/openmrs/openmrs-module-spa/pull/38
  1. https://github.com/openmrs/openmrs-esm-api/pull/43
  1. Ampath had session w/ Florian re. new architecture - looking at design for flexible MFEs to come up w/ widgets that are flexible t/o MFEs
  1. Repo: https://github.com/AMPATH/ampath-esm-clinic-dashboard
  1. Frontend Development Vision statement drafted; vetting with Bahmni to see how they see this fits in for future convergence using this tech
  1. Draft: 
  1. Style Guides/Design Systems Update & Discussion: @Ciarán Duffy will join us for the 2nd half of the call and we'll address next steps here and open the opportunity for questions.
  1. Ciaran having period to speak to people in community and interview would give better recommendation/rationale - later in August due to admin blockers