O3 Squad Notes


Helpful Links



Weekly Squad Call Info

Thursdays at 1pm UTC (6:30pm IST, 4pm EAT, 3pm CET, 6am PDT, 9am EDT) (GCal Invite link here)

(lightbulb) Join link: https://om.rs/zoomo3

(question) Slack Channel: https://openmrs.slack.com/archives/CHP5QAE5R

Topic Parking Lot

UX Design Topics Parking Lot

Design Topics Sign-Up Sheet: https://om.rs/o3calls

(lightbulb)Things to discuss on a UX/product design call, outside of squad calls(lightbulb)

  • Grace - TALK If DOB unknown, but have Age Estimate - set DOB to Jan 1 or June 1?
  • Better Error Page: "Oops!"
    Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • 3.0.1/SWR Implications: Design for "Loading / Stale but Updating

Architecture Design Topics Parking Lot

(warning)Things to discuss on a architectural design call, outside of squad calls(warning)

  • Reduce run-time of page loads
  • DX: Clean up garbage warnings in PRs
  • Tech debt: Clean up sllight disscrepencies in tech approach btwn esm-pt-chart and esm-pt-management
  • Form Recordability: Realistic clinician workflow: form → updating conditions. All should be form-recordable (e.g. conditions). Starting with associating with encounter; how do you know which condition was added first - should see in the order that you collected them, and see where . https://talk.openmrs.org/t/introducing-a-platform-team-for-openmrs/33828/19

Meeting Notes


Recording: O3 Squad Call_June 6, 2024


Recording: O3 Squad Call_May 2, 2024

Recording: O3 Squad Call_May 9, 2024

Recording: O3 Squad Call_May 16, 2024

Recording: O3 Squad Call_May 23, 2024

Recording: O3 Squad Call_May 30, 2024


Recording: O3 Lab Squad Call_April 2, 2024

Recording: O3 Squad Call_April 4, 2024

Recording: O3 Squad Call_April 11. 2024

Recording: O3 Squad Call_April 18, 2024

Recording: O3 Squad Call_April 25, 2024


Recording: O3 squad call_Mar 7, 2024

Another Mar 7, 2024 O3 recording

Recording: O3 Lab Squad Call_Mar 12, 2024

Recording: O3 Squad Call_Mar 14, 2024

Recording: O3 Lab Squad Call_Mar 20, 2024

Recording: O3 Squad Call_Mar 21, 2024

Recording: O3 Lab Squad Call_Mar 26, 2024

Recording: O3 Squad Call_Mar 28, 2024


Recording: O3 Squad Call_Feb 1, 2024

Recording: O3 Lab Squad Call_Feb 6, 2024

Recording: O3 Squad Call_Feb 8, 2024

Recording: O3 Lab Squad Call_Feb 13, 2024

Recording: O3 Squad Call_Feb 15, 2024

Recording: O3 Lab Squad Call_Feb 20, 2024

Recording: O3 Squad Call_Feb 22, 2024

Recording: O3 Lab Squad Call_Feb 27, 2024

Recording: O3 Squad Call_Feb 29, 2024


Recording: O3 Lab Squad Call_January 30, 2024

Recording: O3 Squad Call_January 25, 2024

Recording: O3 Lab Squad Call_January 16, 2024

Recording: O3 Squad Call_January 11, 2024

Recording: O3 Lab Squad Call_January 9, 2024


December 21, 2023: O3 Squad Call Recording

December 14, 2023: O3 Squad Call Recording

December 12, 2023: O3 Lab Squad Recording

December 7, 2023: O3 Squad Call Recording

December 5, 2023: O3 Lab Squad Recording 


November 28, 2023: O3 Lab Squad Call Recording

November 23, 2023: O3 Squad Call Recording

November 21, 2023 O3 Squad call recording

November 16, 2023 O3 Squad call recording

November 14, 2023 O3 Lab Squad call recording

November 9, 2023 O3 Squad call recording

November 7, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_xjukqajm

November 2, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_2dr1vyf1


October 31, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_blwc31rt

October 26, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_440kqgfz

October 24, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_8yuf4h0j

October 19, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_0dcfmrts

October 19, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_ydvb2mpp

October 16, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_s443c5kb

October 12, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_2b8r9rf1

October 9, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_b9xysfsq

October 6, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_4nz4bc3n

October 5, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_hxdv3m4c


September 28, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_t1qomzls

September 21, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_31myiqw8

September 14, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_4x2ps1rr

September 7, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_xpdwab7n


August 31, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_3tucg34v

August 28, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_0dk93sso

August 24, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_7x50kd13

August 17, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_mloqr8qg

August 10, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_7y1m6qrk


July 27, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_ord1cn4i

July 20, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_k5g1z544

July 17, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_i5bblazf

July 13, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_uf8s4v34

July 6, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_dyrceeln


June 29, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_gnlehmig

June 23, 2023 O3 App shell deep dive call recording: https://iu.mediaspace.kaltura.com/media/t/1_01i0mvtw

June 22, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_iz6dam2h

June 19, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_mjd4mwr6

June 15, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_tenrx2u4

June 12, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_t450nz1h

June 8, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_g0k6v4je

June 1, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_ulv1sery


May 25, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_c6k1hqn7

May 22, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_c82u1m7d

May 18, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_lj7zwxyo

May 15, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_qqwyamdd

May 11, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_p52yo6dx

May 8, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_eseltcz3

May 4, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_wy7c5wwx

May 1, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_7s6sxgrz


Engineering Work Gaps: 

April 27, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_c9exch7w

April 25, 2023 O3 Performance review call recording: https://iu.mediaspace.kaltura.com/media/t/1_gg58dzrl

April 24, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_s6m0u6f9

April 20, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_0whacci3

April 17, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_h0dk0dh1

April 13, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_vwci2vnn

April 6, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_qpshflfp

April 3, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_cn4xq29d


March 30, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_m55o2qe6

March 23, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_hjsr052s

March 20, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_fgilrkc4

March 20, 2023: Design call recording: https://iu.mediaspace.kaltura.com/media/t/1_seeokv43

March 13, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_nzrv9fzr

March 13 2023 Design call recording: https://iu.mediaspace.kaltura.com/media/t/1_efn8msf8

Attendees: Paul A, Fiona A (PIH), David (PIH), Mark (PIH), Wamz (UCSF), Grace (OMRS)

March 9 2023 Design call recording: https://iu.mediaspace.kaltura.com/media/t/1_j1fest1u

Mar 2, 2023 O3 Squad Call: Recording: https://iu.mediaspace.kaltura.com/media/t/1_89la472a

Grouping Concern with Dispensing

Fiona: Just returned from SL Wellbody site; found that pharm users are tending to dispense drugs one at a time rather than in grouped list because they may not have all of the medications available in inventory. They also want to then close the order for the drug they didn't have, or put it into a "hold" of some kind (e.g. pt to return in a week), to indicate the order has been dealt with for now. 

Wamz: In past, system w/ stock mgmt had way of flagging what you didn't have. 

Next steps: Mark to query existing PIH useage data to see how often orders are done in group vs incomplete.

Fiona: Ppl who saw the UI were excited and hopeful. Already pretty much paperless, using PIH system at POC

Visit Notes

HFE supports a view mode. O3 Design Docs do show opening in read-only mode: https://app.zeplin.io/project/60d59321e8100b0324762e05/screen/61f3bc47a8db51b352d1a034 

Is this rendered by the form engine?

OHRI Example: Where form had already been filled, (lab order) - 2-step form

Home Page title

Certain users would want to go directly to certain pages when they log in. 

Design Input: Home screen should include Queues, but intent is not that the Home Page defaults to the equivalent of Queues. 

Headline should just be "Home"; Home becomes its own configurable app; or, default to what user likely to want, e.g. direct to queues



February 23, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_q9bi91cw

February 21, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_767b3u5l

February 20, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_pfm0577x

February 20, 2023 Design call recording: https://iu.mediaspace.kaltura.com/media/t/1_u8r1ctak

February 16, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_41ruqtls

February 14, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_h1h5dtr7

February 13, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_uh0tzvsb

February 6, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_1k7v1sq7

February 2, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_f7h44h90

February 2, 2023 O3 Squad call recording: https://iu.mediaspace.kaltura.com/media/t/1_9au8x4nv

Grace Potma, Paul Adams, Burke Mamlin, Tendayi Mutangadura, Antongy, Cynthia Kamau, Dennis Kigen, Donald Kibet, Geert Meekers, Ian Bacher, Jacinta, J Teich, Joshua N, Lousa Yogo, Pius Piru, Samuel Lubwama, Samuel Male, Vineet Sharma, Wamathaga Kamau, Kennedy Makombe

Lab Orders Review:

  • Can I just search without having to click into one specific category? Do order templates contain “type” of order?The ordertemplates module looks like it will need some changes to handle the option being selected, but the search part should be… ok-is

Palladium Pilot Findings w/ Appointments & Queues:

  • Bahmni Appointments - Missed Definition different in Field: To retreive data clinicians wanted. Only able to track statuses - scheduled, checked-in, or missed. Users define honored as “checked in” AND “visit started” AND seen clinician - e.g. users who check in, then never get seen. 
  • Service Queues Challenges: First facility quite small, didn’t need queue. 2nd facility, very many patients; use cards to monitor movement & priority. Need to organize who to see first - entries are ordered by wait time (and w/ emergency at top). Also need Queue Number. → Need number that can be called out, even displayed, publicly rather than name (due to sensitivity - e.g. instead "Jon Smith next please" can be "#44 next please"
    • Sounds very similar to needs i.d.'d in Uganda
    • Next steps:
      • Need Queue Number (e.g. service token/placard; via visit attribute) and/or Patient Unique Program ID (pt-specific number)
      • To add physical rooms to the Queue Module, both FE and BE. E.g. location: MCH, which can have multiple rooms. Any clinician able to see you should be able to grab you into their room. 
        • Potentially automating sending pts to different rooms. 
      • Role-based or location-based landing pages for appointments and queues. (Login location may come in handy)
      • (Later) Auditing, & Visualizing: How long they took at a given service point. Show a patient journey using service queues module. Patient journey i.e. Registration -> Triage -> Clinical consultation -> Lab -> Clinician -> Pharmacy – b/c for audit purpose want to record how/when they went from one point to the next. 

These multiple clicks become very 

One-click Visit Start: Proposal: Could we have smart values - e.g. Date, Time, Location, 

Proposal to change language to Check-in: UgandaEMR's "Check-in" combines several actions in the background (starts visit, on that day in that particular minute, at the location you're logged into

Pre-select Visit Type (e.g. default to what Appointment was made for), Default Urgency to "Normal" (can change if needed) (or even checkbox for Emergency)

Only thing that needs to be picked manually: Queue ("where am I sending this patient")

Grace to do: Change O3 RefApp demo data for Visit Type - currently too locations-based (different than Encounter type)

Auto-fills fields for you: 

If NOT found,

What if information is different - e.g. they've moved, changed number - you would edit and update, then click "Post to registry" (big grin) (however right now the registry in Kenya doesn't allow these edits right now - more about are you in the registry or not)

Why have post to registry button at all? Why not do automatically with Save Registration?

UGEmr already doing this in background automatically. Samuel L likes idea of validate - explicitly share/update

OHRI: Checking if they exist in Registry is being done in search workflow

Samuel M: HOw to make this generalizeable given so many places have different MPI APIs?

OHRI assumes FHIR-compliant registry, via middleware (OpenHIM) which translates the mediators to FHIR. 

Samuel M: Thinking of translator strategy similar to FHIR2 Mod. 

Sam M would like to contrib to queues 



  • Design System & Design Components & Code Components and how to bring into greater alignment (Ciaran, Aline, Dennis, Grace; ?Ian, ?Daniel, ?Eudson, ?Pius, ?Samuel M) → ? dev work to look at the code components and see which are easy to refactor, e.g. content switchers, tide headers - next week or week after

2023-01-30: Design Call: 

  • Allergies: See @Ciarán Duffy latest ideation (follow-up from last week) - moved to next week

Frontend "Encounter Context" & Visit Context - "You are here"

  • Encounters & Visits: How we show users which encounter or visit they're working within at any given time. Should be clear which encounter / visit they're working within. Right now it's possible for them to unknowingly enter info against a completely different encounter/visit.
  • Clinical Meaning vs Technical/Backend Meaning can be used differently 
    • E.g. PIH - Vitals Encounter for info entered in Vitals Form (very form-based; looking for O3 to support better than current form-based approach does. Form based approach not something we want to continue doing.).
    • Problem/challenge: O3 has pulled apart the "everything in 1" form approach. Need ability for multiple components to contribute to 1/the same encounter. Want encounter in the system to represent the encounter in real life. 
  • Use cases: Why do we make multi-active possible at all?
  • Logic for Closing an Encounter - E.g. Bahmni's implicit encounters - setting a timer when an encounter is created, any new data coming in w/in certain frame of time, goes in that encounter. If you're in different context, border color changes etc.
  • Why do we allow multiple encounters or visits at once?
  • Editing: E.g. Pt comes in for return HIV visit: Write note, orders, form for right now. See past mistake or issue in last month's encounter - I want to edit that. Or, patient has left, and I want to keep working on some documentation for that past encounter. Need to know explicitly "you are adding something to this encounter."
  • Movement: E.g. Pt goes over to lab, billing, etc
  • Multiple Providers: E.g. Nurse, Clinician, Social Worker - may be in same department/visit but different encounter. Implementation might decide to have everything in the same encounter. 
  • E.g. When you order a drug it creates a Drug Encounter. We would like things to be logged against a single encounter - not one for the drug order, one for a form, etc etc. (Feature Architecture)
  • E.g. Multiple Active Visits at once: End Modal should be clear about which one you're ending; how can UI make clearer which Active Visit you are adding information to?
  • Confirm Order History plan - for now we'll proceed w/ simple table

Where do we go from here? Next Steps:

  • Introduce encounter context → Burke → Talk post ongoing here
  • Design time - user mental model; way to give them the context of what they're in → ____ (Grace f/u on how to fund...but, this is really a technical thing; e.g. Amazon - I want to cancel something in my orders. Go into order and select something in there. A little design that shows us how we put the encounter context in. Design tweak not design project.)
  • Then - once Design Model done - Fix encounter model of Order Basket - orders should be part of your desired clinical encounter
    • TAC Call 

Debrief w/ Ian: Main concern is reporting. We had ok'd the encounter for Drug Orders just to keep that work moving forward. 

2023-01-23: Design Call

Attendees: Grace, Ciaran, Burke, Jonathan T, David D, Dennis 

  • Lab Recent Results Summary Widget redesign ideas - Clinical Presentation - Grace & Ciaran
    • Decision: Remove Recent Results Widget for now, reconsider when w/ Order Status
    • Also partly covered by Clinical Summary designs
  • Allergy form redesign ideas - Grace
    • Decision: Yes, redesign for entering 1 allergy at a time
    • F/U w/ Ciaran re. how to get designs done for Allergy form
  • Advice: Single-tab forms - Grace
    • Decision: Remove page nav if 1 section form and qnr body will take over that space. Don't show nav if only 1 page. 

    • Dennis: Could we load the buttons as not part of the form but part of the workspace?
  • Update on Lab Orders plan - Wamz/Grace/Paul
    • Designs for initial feedback coming later this week
  • Way to show Order History (e.g. for Meds, Labs, etc...) esp. now that Orders page renamed "Medications"
    • TBD - need to think about it
  • PIH Update: 2023 moving ahead seriously w/ O3. One goal is for new MCH centre for excellence in S/L (tentative opening mid-2024) 

2023-01-16: Design Call

Grace Ciaran JonT SamuelL Vineet Joshua

Joshua - flags

Bug & Improvement Ideas review - Grace

Samuel L: How do you document someone's careplan over time? 

  • If patient changes hands, instead of looking at entire Hx, what is the careplan for this patient? What is the condition, and how are we treating them for that specific condition? What is the treatment plan?
  • Currently, careplans tend to be buried within text notes deep in the EMR. (insight found from Ciaran's research w/ high-risk-pt HIV clinicians in Kenya)
  • Want structured, unlike sticky note which is not structured
  • https://hl7.org/fhir/careplan.html 
  • Eg: HIV: Pt receiving DTG for HIV, and DPG for TB; need for long-refills; Cancer: Chemo, Condition
  • How do you organize patient treatment? Do we continue using orders as they are?

2023-01-09: Design Call


  • Pt Summary: how to optimize this page? Where does the offline actions summary belong? How can we clean up the Recent Results view on the Pt Summary page?
  • Medication Tab on Left - rename the current "Orders" page to "Medications": https://issues.openmrs.org/browse/O3-1737 - and how will we later show Order History - UX Design plan: A place in order basket for you to go to to see Order History
  • Ordering drugs - how do we make the drug name more clear? https://issues.openmrs.org/browse/O3-1730

Plan for CarePlans? e.g.: Documentation of long refills - document how you decided right medication.Hard to represent care plan in active medications list.  Let's discuss next week in depth

Ability for user to enter something like: Consult Note, Imaging, Lab Test

Need to reorganize this so fields are thematically on same line:

Look at "Simple Orders" w.r.t. combining dose # & dose unit (mg)

Cull Pt Summary to have the widgets in the order shown here: https://app.zeplin.io/project/60d59321e8100b0324762e05/screen/60d59c8c1ff239bbe989d7d5 

Cards need max width - value too far


2022-12-12: Design Call

Attendees: Christof (SolDevelo), Grace (OMRS), David (PIH), Beata Komorowska & Beata Zwidryn (SolDevelo), Ciaran (Sonder), Dimitri (Mekom), Fiona (PIH), Geert Meekers (SolDevelo?), Mark (PIH), Paul (Sonder), Ian Bacher (Brown), John Mark Esplana (ICRC), JJ (Ampath)

Full recording at this link here 1.

    • Bulk RDE/Fast Form Entry
    • Group Visits
    • Patient Grid creation and use
    • Real-Time Clinical Analytics in SuperSet
    • New workflow tool in patient chart

SolDevelo/J&J: Reporting ideas + Feedback designs - Christof

Navigate report, select output, run it

Need to show users like clinicians a simplified UX in O3 visuals - without going through the big Sys Admin page. This resonated for both Dimitri/Mekom and David/PIH, b/c they have users who aren't necessarily sys admins. Dream for Mekom would be a one-button for "run all data exports". 

link to the newer prototype version


Ciaran to review and provide detailed design feedback


Dispensing form: 

Rx's being grouped by encounter. Allergies is working (hooked up to PIH 2.x). 

ICRC Demo: How ICRC is using O3 in a bigger HIS system picture 

  • Fast data entry
  • Group data entry
  • Patient Grid
  • Superset
  • Offline use:
    • Work on encryption – updates and timeline
    • Fast data entry / group data entry

Many locations, diff countries: .

Form tabs are configurable


Integration: OMRS & Superset

Data is streamed q 2 mins

Workflow / user journey:


2022-11-07: Design Call - Service Queues with KenyaEMR & UgandaEMR

Participants: Samuel L (METS), Jonathan T (Vol), Antony (Palladium), Ciaran (Sonder), Cynthia (Palladium), David (PIH), Dennis (OMRS), Grace (OMRS), Isaac Akileng (METS), JJ (Ampath), Musa (METS), Pius (METS/OHRI), Solomon (METS), Vineet (Mekom), Piotr W (SolDevelo), Michael (Madiro)

Antony: KenyaEMR going live at a site on Wednesday: Registration, Appointments, Queing, at small site with selected providers. Goal is user feedback and refinement. Giving users new features. Will come back to this group w/ feedback from users on Appointments, Queues. 

Proposal for v2 of Service Queues by Samuel L: (previous Talk post here: https://talk.openmrs.org/t/o3-queue-workflows-from-station-to-station/36869) Sam L = Queues Lead

Example case of woman with stomach pain: sees OPD: Registraion Triage (combo), Clinician, Blood tests for Pregnancy and HIV, HIV positive so sent to HIV Clinic for confirmatory test → HTS Counselor → HIV Clinician → ART Dispensary. 2 docs, 2 lab people, 1 triage. 2 departments which refer pts to each other when certain program rules are triggered (eg HIV + → send for confirm test). Depts or clinics that operate semi-autonomous but also have referral workflows. 

UI: 9, 6, 5, 7, 8, 11


Attendees: Dennis Kigen, Samuel Lubwama (METS), Joshua Nsereko (OMRS fellow), Pius Rubangakene (OHRI), Sharleen Awinja (Volunteer), Tendayi Mutangadura (Fellow), Vineet Sharma (Mekom), Juma Mukoova (Volunteer)

Sharleen and Juma introduced themselves to the group.

Juliet: spoke about her work on fixing the identifiers UI on the patient banner. Mentioned that she would file a PR soon.

Vineet demoed on his work on adding keyboard navigation controls to the patient search. He also gave an update on his patient search experience v2 work - mentioning that displaying recent search results was the last piece of the work. He also demoed his work on fixing the drug ordering experience. He had a query about whether a user should be able to record past medications.

Pius gave an update on OHRI's PMTCT work in Namibia. He also mentioned that he was working on the new form builder (helping advance Kumuditha's good work during his GSOC program) as well as fixes to the dispensing app. He had a query about configuring services types in the Services Queues application



Attendees: Grace P, Hadijah, Solomon (UgEMR/METS), Burke (Reg), Deb (Vol), Isaac Akileng (UgEMR/METS), Jacob Wasswa, Jonathan T (Vol), Joshua N (OMRS fellow), Juliet (Vol), Musa (UgEMR/METS), Pius (UCSF/OHRI), Vineet (Mekom)

Vineet: O3-1565

Hadijah: New type of notification / new component: Actionable Notification: (showActionableNotification function - can add, attach an action) - documentation added to repo. Let's also include in devdocs. 


Musa: UgEMR team working w/ Pius to solve a few issues encountered in OHRI. Bootcamp next week, team will be working to complete pulls for family health module, and handling service queues, and prepping for go-live. We will also be in touch w/ Hadijah about leveraging the cmty appointments module. 

Solomon: Re. Service Queues: Resolved their metadata and have all that's required for the queue module. Backend working fine. Trying to see today how the 2 can be combined (FE and BE). Samuel L in Kenya, talking to Palladium about how this can be achieved. Still some issues b/c of how they want to package their product - raised on Talk: ______ Esp. about how to have 1 single file to put at facility without internet and run it. Packaging is the slow down. 

Adjourned early. 


Giving a summary of the log rather than the full log



Uses Address Hierarchy module from the backend

Quick Search: Auto-fills

Filling by level: 

Solomon: METS will be reaching out. Adding service. queues, pt management where search and fingerprint and address hierarchy are included. 


Supporting Cohort offline, fast data entry app completely offline. OCT/NOV. RDE unblock for internet outages. Select forms and groups of patients you want to enter retrospectively so they can do that on their own at home - again not about intermittent connection, going offline. 

UAT ++ by ICRC 




Attendees: Hadijah (OMRS), Pius (METS/UCSF), Musa (METS/UgEMR), Deb (Vol), Grace (OMRS), Anjula (GSOC), Zac (Mekom), Vineet (Mekom), Joshua (OMRS), Tendayi (OMRS), Jonathan T (Vol), Samuel L (METS/UgEMR)


Joshua: Ability to Mark Patient Deceased https://github.com/openmrs/openmrs-esm-patient-chart/pull/680

Kumuditha: Microfrontended, Reactified, Carbonized Form Builder!!

→ Next: Samuel & Kumuditha working together to update from 3.x to 4.x

→ Currently supports OHRI Form Engine. Grace to move discussion forward to align cmty form engine approach or extend engine support in Form Builder. Does this not yet make sense to bundle in the RefApp? Or should it be part of the app registry or OMOD directory? 


Recording: https://iu.mediaspace.kaltura.com/media/t/1_jbccw7xu

Attendees: Grace (OMRS), Zac (Mekom), Juliet (Vol), Ian (Brown), Dennis (Ampath), Samuel M (UCSF/OHRI), Rudrajyoti Biswas (Thoughtworks/ICRC), Eric Achillah (Ampath), Burke (Regen), Deb (Vol), Irene (Vol), Vineet (Mekom), Ken Makombe (Palladium), Gabriel, Donald (Palladium), Johnstone, Daniel K (OMRS), Vineet (Mekom), Samuel L (METS/UgEMR), Joshua Nsereko (OMRS Fellow), Hadijah (OMRS Fellow)

Zac: Group Sessions now have validation. Waiting on backend resource to submit. 

Rudrajyoti (Thoughtworks, for ICRC, working on offline)

When page is downloading for offline mode - wants config to determine whether encryption is enabled or not. 

Vineet: Advanced Search filtering, and responsive!

Bug where forms are not loading in dev3 → Dennis investigating

Hadijah: Now bringing in as componenet not extension. Pt banner was loading slowly → now should be fixed w/ new PR (big grin) https://github.com/openmrs/openmrs-esm-patient-management/pull/340 

Reuseable form & pt header for creating and editing an appointment. Removes duplicated code. 

Jayasanka: O3-related GSOC projects coming to close; summarized here:

Makombe: Found some bugs in Reg page which he's fixed

Custom answers for demographics; configured address hierarchy

Samuel L: Discussion on Queues v2: https://talk.openmrs.org/t/o3-queue-workflows-from-station-to-station/36869/11



Recording: https://iu.mediaspace.kaltura.com/media/t/1_a5u9cyzt


  • Vineet: Increasing Attachments support:
    • Delete attachments
    • Attach multiple files at once
    • Support for pdfs, html, and jpgs/pngs
    • PDF viewer:
  • Samuel M: Drug Order work
    • Drug Order config: config-schema.ts. Using custom backend for stable server. 
    • Configs to be done first in your Admin page: See wiki: ____________ 
    • Returns routes, dispensing units, desired frequencies. 
    • Backend requires orders to be associated with encounters. So, created a special encounter just designed for this case (smile) Use "drugorderencountertype" to configure.
    • Define drug templates:
    • Result:
    • Order another: 
    • After signing, appears in patient chart: 


Attendees: Anjula (GSOC), Grace P (OMRS), Abdi (Thoughtworks), Bisrat (Thoughtworks), Burke (OMRS), Hadijah (Fellow), Ian (Brown), Jonathan T (Vol), Joshua (Fellow), Kal, Musa (UgEMR), Piumal (GSOC), Pius (OHRI), Vineet (Mekom), Zac (Mekom), Chris Lumu (Vol), Romain (Mekom)

Anjula Demo'd: Drug Order filter in cohort module:

Hadijah Demo'd: Appointments creation form from the Appointments dashboard. Next step will be calendar, now that creation, editing, and viewing are done. Romain supported with API questions (smile). Timeline = Mid September. 

Blocker: Broken API: Couldn't create an Apptmt successfully 

Vineet: Patient Registration was taking long time to render (30-40secs); fixed now

Zac: Nested Question Support: 


2022-07-28 Squad Call

Review QA Plan

Review Sprint Board - end very old sprint and start new one. Confirm active work. 

2022-07-21 Squad Call

Attendees: Anjula Samarasinghe, Grace (OMRS), Irene (Vol), David (PIH), Pius (OHRI/METS), Vineet (Mekom), Zac (Mekom), Romain (Mekom), Tendayi (OMRS Fellow), Melkam (ICAP-Ethiopia), Makombe Ken (Palladium), Edison, Johnstone, Jonathan Teich, 

Docs expectations: Should be some  form of ReadMe for every esm app. Esp. if users of that app should know anything about how to configure it. eg: https://github.com/openmrs/openmrs-esm-patient-chart/tree/master/packages/esm-patient-test-results-app Why: Otherwise, folks will fork the code to customize, when configuration was actually possible. If in a hurry can ping Grace to ask for quick docs support. (eg https://github.com/openmrs/openmrs-esm-patient-management/pull/271)

  • Zac: Update to bulk data entry feature - moved save buttons to right: 
    • Q: Romain: Progress with saving forms in draft? To discuss.  
  • Anjula: Cohort Module: Search by encounters & search by locations. Stuck on drug order - created REPORT-890, following up w/ Daniel. Can now clear date ranges after selecting. Feedback & updates: https://talk.openmrs.org/t/gsoc-2022-redo-legacy-ui-cohort-builder-project-updates/36847/29
  • Vineet: Attachments widget improvements. Can drag and drop multiple files. Able to add an explicit name and description. Need backend support for storing the description. 
  • Ken Makombe: Migrating all of KEMR to O3 by end of Sept (though may not have all features; any feature not in O3 users can still find in KEMR - so they are still maintaining KEMR), Ken leading this process. Latest issue: Maintaining Form Entry resource, having resource support in the O3 JSON Schema. Configuration of IDs on the registration page: If you don't provide values, errors out. Donald provided a fix. Need PR for Address Hierarchy.  
  • Pius: Working w Dennis to get upgrades added / roll out 4.0 branch. Re. dispensing: Samuel doing Ord
  • Working on Patient Queues. 

2022-07-18 Product Design Call

Attendees: David, Jonathan, Samuel L, Burke, Wamz, Grace, Tendayi

Demo by David of Haiti EMR pathology sample tracking: Form that creates an order behind the scenes

Upload PDF report: ___

Way to know what needs follow up. Haven't done this for general lab sample tracking, explicitly excluded because plan is for the LIMS system to cover that. 


Anjula: Added more search pieces: Demographics, Person Attributes, Encounters, and Location. Next: Search by Drug Order. 

Lack of Dev3 demo data is a Blocker for Anjula b/c can't test the Search Results properly when there are no patients to search! Grace to post on Talk for f/u. 

Pasindu: Spinning up new environment for tests: Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Dennis: Updated esm-core

Updating esm-patient-chart to include all the updates in: 

esm-patient-management: working 4.0 branch is out of date at the moment so Dennis addressing that now. 

Specifics people should know about changes: See ReadMe documentation. 

Another Hackathon with Palladium colleagues: Worked through workflows for KenyaEMR in O3. eg Skip logic in forms. 

Updated documentation on how to extend ampath form engine:

Solomon: Working w/ Palladium, applying conversion script to UgEMR forms (smile) Bulk of their forms can indeed be converted from HTML to O3 JSON! 

A number of features/use case coverage requested by users after presentation about O3 - team decided they needed to do more instead of just focusing on Maternity. So now also expanded to "Family Health": mothers, fathers, immunizations, maternity/antenatal. Multiple bootcamps planned over coming months to work on expanded scope. Goal was always to start in field by start of Oct. Visiting facility next week to do workflow validation, get input from people at facilities. 

Need Service Queues call to kick start momentum again. 



Attendees: Piumal (GSOC), Grace (OMRS), Ian (Brown), Ciaran (Sonder/Ampath), Deb (Vol), Solomon S (UgEMR/METS), Anjula (GSOC), Joshua (OMRS Fellow), Romain (Mekom), Zac (Mekom), Manoj Lakshan (question), Irene (Vol), Vineet (Mekom), Samuel M (UCSF), Roy Ntaate (question), Tendayi (OMRS Fellow), Mwanje Musa (UgEMR/METS), Edison (Vol), Samuel L (UgEMR/METS), Vineet (Mekom), Sharif (Vol)


Styling improvements to search box navigation. Search results clear:

Save cohort results:

Clear search history:

Next week: Search by demographics

CSV results: SL: Have you looked at the Data Export function where you can select which columns to download etc? Will still be able to use it as long as you save your cohort. 

All is currently on Anjula's local. Can we get dev3 server running w/ reporting + reporting rest module? Ian was TODO - Grace to f/u with Rafal: TODO - dev3 server works fine and they're theoretically there, but it won't start the reporting and reporting rest modules; not sure why and this is blocking Anjula's work from getting into dev3.  This is working in UgEMR

Piumal: Import:

PR: https://github.com/openmrs/openmrs-esm-admin-tools/pull/3

Zac: React Utils error state idea - PR to come. Ian voiced agreement and suggested using the esm-styleguide repo. 

Update: Working on Ampath Form Engine - forms were loading slowly. Batch request to load concepts. Came to platform team to ask for help w/ that endpoint; no attendees. 

Vineet: Start Visit button in the patient search workflow (smile)

"Search patient" component button now available from any page (de-attached from the service queue work)

Ciaran: +++ Updates in Zeplin; everything we've talked about in the last few months are now more clearly added here; eg Tasks label: 


Attendees: Ciaran (Sonder/Ampath), Grace (OMRS), Tendayi (OMRS Fellow), Irene (Vol), JJ (Ampath)

Ciaran mostly away July 11 - Aug 29; responses to urgent messages each monday; everything else non-urgent 

Finishing tasks, stickies, help menu, patient flags, new order basket & organizing in Zeplin. Creating design/dev handover materials, change log as well. 

Seeing different types of orders in your order basket: This Was user tested at end of last year, just never put in zeplin. Put in zeplin now. 

User Testing Findings from Tasks thus far: 

Very palpable excitement about tasks and flags in user testing. (All Ampath users, 2 retention workers, 3 clinicians) 2 team members from Palladium also involved in design. 

Trying to finalize tasks: difference btwn required vs recommended task; users didn't get the difference in testing. All users asked for tasks to be assigned to a role. 

Users were expecting to use sticky notes in a similar way to how they were expecting to use tasks. But, once users saw the tasks, then expected to use sticky notes to share misc. important information (this is how Ciaran expected them to use stickies). 

Changed to only 1 sticky rather than multiple. 


2022-06-30: Squad call

Attendees: Grace (OMRS), Samuel L (METS/UgEMR), Kumuditha (GSOC), Cynthia K (Palladium), Ciaran (Sonder/Ampath), Burke (OMRS), Jon Teich (Vol), Deb (Vol), Patrick Wangoo (Palladium), Kennedy (Palladium(, Patrick Waweru


  • UgandaEMR having their annual implementers meeting right now with 100 people; announced plan to move to O3, received with excitement.  
  • Paul Adams currently doing UX Research for O3 in Cambodia. 


  • Deb: Tablet view for Order Basket
      • Get the highlight if you exit the form:
  • Anjula: Cohort Builder visual update
    • UI change proposed:
      • Current state: 
  • Zac: Bulk form entry
    • Search for a patient
    • Work through 1-form-a-patient
    • Burke feedback: as a user, having consistency on how patient header/summary is displayed is helpful. We don't have to show exactly the same banner everywhere, but if we are showing avatar+name+age+gender+ID, it should always looks the same. 
    • Burke feedback: 
    • We will follow up with Talk thread to clarify header standards. 
    • https://github.com/openmrs/openmrs-esm-fast-data-entry-app
  • Kumuditha: Requested Ciaran's feedback on design proposal for Form Builder UI: https://talk.openmrs.org/t/gsoc-2022-next-generation-form-builder-ui-for-the-openmrs-community-discussion/36817/5
  • Vineet: Start Visit button implemented in patient search results
  • Juliet: 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.
  • Though Donald fixed this in the Ampath Form rendered, so even if this works correctly in the Ampath form engine, it doesn't work in custom react-coded forms (eg the conditions widget form)
  • Hadijah: Bug fix: The left nav is highlighting correctly based on which page you are on, finally!!
  • Musa: Working on UgEMR O3 forms
    • Need rules for when to show/hide Clinical Views - Talk post on vision for - it would also make sense to add the view automatically if a patient is enrolled in a certain program. Starting with user privilege & patient program assignment(s) seems like a good start.
    • Samuel & Musa. (Tag brandon re groups config) Dynamically Change. Activating vs Hiding. "Show if" vs "Hide if". Ping Samuel 
  • Ciaran: Wrapping up flows and roder basket, get into Zeplin by end of next week. 
    • Flags: very warm reception in user testing w/ Retention workers and Clinicians. Now considering adding flags in Pt Summary so they don't follow you around in the pt chart and clear up the header a bit. 
    • But can still refer to them like here:
    • Users all liked ability to change/turn off flags:
    • Also tested having people onboard themselves - helper menu floating in side rail
    • Walkthrough worked really nicely, eg with tooltips like this:
    • Tasks usability testing feedback: Want filter to only show me tasks relevant to my role
    • Showing
    • Better search experience in search "Add drug order"  

2022-06-30: Workshop:  HFE to O3 Form Schema Conversion


2022-06-23: Squad call

Recording: https://iu.mediaspace.kaltura.com/media/t/1_n5sk9lqy

Attendees: Abert (Vol), Grace (OMRS), Anjula (GSOC), Samuel Lubwama (METS/UgEMR), Solomon Ssevvume (METS/UgEMR), Irene (Vol), Samuel Male (UCSF/OHRI), Todd Anderson (PIH/IMB Rwanda), Eric A (Ampath), Juliet (Vol), Pasindu (GSOC), Ian (Brown), Ciaran (Sonder/Ampath), Tendayi (OMRS Fellow), Florida (Ampath), Jayasanka (Vol), Vineet (Mekom), Eudson (UCSF/OHRI), Dennis (Ampath), JJ (Ampath), Musa (METS/UgEMR), Jesse, Zac (Mekom)

  • Anjula: Shared update of cohort builder in O3 UI (big grin) Request from Samuel Lubwama to combine multiple variables in a single search - Anjula confirmed by end of GSOC projects you'll have existing fx. Ciaran to f/u with design feedback for cohort builder UI.
  • Pasindu: Shared update of O3 E2E test work; to use this dockerized version that uses "latest" version of app. We will also be setting up another repo specific for O3 E2E tests. 
  • Juliet: Dragging size of Panel filter UI 
  • Vineet: Patient search - more user-friendly:
    • Can't implement showing "Pts you recently searched" b/c specific to the user which needs to be saved on the backend. --> Follow up on Talk. 
  • Zac: Working w/ Donald to allow ability to have a "permissive workflow" with Ampath Forms so that you don't need an active visit or encounter ID associated with a form. eg RDE: Form captures when  the visit happened, so we shouldn't force user to go in and start a visit manually as well. Doesn't break philosophy that there's still an encounter associated with the obs. 
  • Solomon Ssevvume (METS): Ensuring O3 forms updated. Goal is for O3 UgEMR iteration to be in MCH facility by Oct 1 (smile) Biggest holdup now is that Service Queues are ready for their point of care reality. Grace to follow up re connecting METS w/ ongoing Ampath/Palladium work. 
  • Dennis Kigen (Ampath): Updates to Form Builder documentation (smile) New guides for referencing forms, hiding fields, performing calcs, updated guidance on how to do validation, and Developer guide on how to get Form Builder on your server! (smile) And some improvements to the Form Builder webapp itself. Webpack issues blocking progress on 3.0 branch on pt-chart branch; Dennis & Zac & Ian to f/u. 
  • KenyaEMR Palladium/Ampath forms hackathon update: ~60 Palladium KenyaEMR forms converted from HFE→O3 forms!! BAs + QAs up and running w/ builder. 
  • Design Updates from Ciaran:
  • Ciaran: Experimenting with Onboarding flow:

Updated Referral Order flow:

Reason for block-ifying the Vitals? 

2022-06-16 Squad Call - Embedding Widgets in Forms

Recording: https://iu.mediaspace.kaltura.com/media/t/1_huo0jtmp

Highlight: Update from Samuel Male (UCSF) - Embedding Conditions Widget in a form: https://iu.mediaspace.kaltura.com/media/t/1_huo0jtmp?st=1185 

Demo of the Condition Widget actually being embedded in a form!

Samuel also shared that OHRI is working on adding Clinic Trend Charts, eg:

2022-06-13 Design Call - Patient Flags & Alerts, User Tasks, and Queue Workflows


Talk post re Queue Workflows: 

2022-06-09 Squad Call


Attendees: Vineet (Mekom), Grace (OMRS), Kumuditha (GSOC), Anjula (GSOC), Derrick (Ampath), Todd (IMB/PIH Rwanda), Juliet (Vol), Jayasanka (Vol), Jonathan (Vol), Tendayi (OMRS Fellow), Zac (Mekom), Ian (Brown), Eudson (UCSF), Ciaran (Ampath/Sonder), Joshua (OMRS Fellow), Deb (Vol), Samuel Lubwama (METS/UgEMR), Donald (Ampath), Amos (OHRI/UoN), Noah (Vol), Kennedy (Palladium), Eric (Ampath), Dennis (Ampath), Pius (OHRI/METS), Moses (ITECH), Jessie (Vol)

React 18 update - Zac Major thing we should do and finish quickly b/c branch is getting bigger & bigger. Need 4.0 branch for patient-chart, esm-home (already done for -core and -patient-management)…. React router 6, faster with React 18, Carbon → Outline of steps here: http://o3-dev.docs.openmrs.org/#/under_the_hood/migrating_react_18 

Dennis working on Carbon upgrade of patient-chart - Dennis to push local; could take on the React upgrade for patient-chart

UgandaEMR team met for a focused week last week of setting up O3 to work on UgandaEMR, prepping for an MCH pilot. Worked through some issues with next/latest, found need to release current snapshot of SDK - Ian to f/u. Building an esm- called UG EMR esm, to add all their forms in there then add to distro to add to main module of UG EMR, so once building using SDK, all is bundled together in that esm, then bundled into .war file they can ship to the facilities. Not yet succeeded with .war bundling but HISTAC colleague has solution. Connected w/ Service Queue folks last week. 

How do we package using a .war file

Timeline: Sept for last mo of devlpmt, Oct deploy in field for feedback starting in MCH. Start to transition all programs to the new look. By April-May, mainstream deployment of O3 / transforming, training whole country and IPs on new look and how to scale. Will be mix of NGO, public, private facilities. Private for profit, government facilities - representation. 

Kennedy Palladium: Frontend mostly done as per designer, now about getting the backend finalized. 

Pt Queuing module: Doesn’t have all the features of the new frontend, which is why a new Queuing module was created. 

Juliet working on back button in login screen, and “Found x patients” bug where count is wrong, and ID search not working Blocked on O3-959

Surprised, the ID search is working in dev3. Just tested it out with 10001NG - we don’t have FHIR endpoint that can search for patients (right now we have one for name and one for id)

→ Works with REST API but not FHIR API

Should be able to combine with any parameters using AND/OR → Donald and Cynthia tried this when working on Queue workflow search and using AND returned a nul error


PIH-Rwanda general design for oncology single-patient view: https://docs.google.com/presentation/d/1rLR6hDgc1VOs7Pjv9gW1IRC_HxyFsUddbR9S_cJvZCw/edit#slide=id.g12d03522d6c_0_0 Brandon will be working in-person w/ them in Rwanda to set this up as the first IMB-Rwanda O3 implementation. 

I'll mention the clinical background and 'most recent text obs' too


2 levels of hierarchy: 

High-contrast - need action

low-contrast flags - FYI - things currently true about the patient but don’t really require direct action 

Telling user that an action has been done successfully or unsuccessfully

Snackbar notifications instead of toasts: 

Pt flags

How could you configure these

2022-06-06 Design Call



2022-05-26 Squad Call

EAT TIME: Attendees: Zac (Mekom), Grace (OMRS), Juliet (Vol), Dennis (Ampath), Donald (Ampath), Daniel (OMRS), Cynthia (Palladium)

  • Agreement from attendees (both EAT & PDT) that this time works better, and we'd prefer 1 call
  • Zac:
    • Carbon update in progress → Advice from Dennis not to say "Use Carbon Styles". Coaching from Dennis on how to add the color variables to esm-core in files.css, and reference those in your later work. Dennis & Zac to have follow up conversation on good practices for how to reference colors. https://carbondesignsystem.com/data-visualization/color-palettes/
    • Got patient search to run 
  • Dennis: 
    • Completed showing Abnormal VS work (in header and widget):
    • Upgrade to Carbon 11; includes the following: 
  • Donald: 
    • Fix of display issues on small screens
    • Completed React Router update!
  • Cynthia: 
    • past visits details display in the service queue table
  • Juliet: 
    • Attachments: Fixed PDF widget Unable to locate Jira server for this macro. It may be due to Application Link configuration.
    • Blocked on Unable to locate Jira server for this macro. It may be due to Application Link configuration. ; decision that we should not continue to spend time on Immunization widget as it's not a good use of time right now
  • Concerns Raised: 
    • Registration App is very unideal, both w.r.t. UX/requirements and way it's coded. Not well equipped for real-world (eg preventing duplicate patient creation) and not a good technical example (it's the first code folks tend to look at). Eg feedback from RW team this week was that it was so unideal they needed to create a whole new app. Also doesn't meet requirements we're seeing in field e.g. "similar patient lookup"
      • Agreement: Let's have a focused session to unpack re-working the Registration App when Vineet back the week of June 7th → Grace f/u on setting up. Min technical requirement is, folks should have reviewed the code.  


  • Zac: Recap of previous meeting
  • Deb: Working on appointment form. It seems that "service type" is not coming from the backend, but is required for the form. Will reach out to the Platform team to confirm what the issue is.
  • Abert: Working on Primary and Secondary diagnoses widget on Visit Note. Currently working on changing to using REST call for endpoint. 


2022-04-28: Squad Call

Attendees: Grace (OMRS), Vineet (Mekom), Prathamesh Mutkure (Vol), Kumuditha (Vol), Hadijah (OMRS Fellow), Juliet (Vol), Brandon (PIH), Ciaran (Sonder/Ampath), Zac (Mekom), Ian (Brown), Abert Namanya (Vol), Deb (Vol), Sumedha Karunarathna (Vol), Joshua Nsereko (Vol), Arthur Mugume (UCSF), Eudson Bambo (UCSF), Irene Nyakate (Vol), Pius Piru (UCSF), Anjula Samarasinghe (Vol), Lars Lemos (UCSF)

2022-04-25: Design call: Appointments, Summary designs

Attendees: Burke (OMRS), Ciaran (Sonder/Ampath), David (PIH), Eric A (Ampath), Eric K (Palladium), Eudson (UCSF), Joachim (Vol), Jonathan Teich (Vol), Kote Cosmas (Palladium), Paul Adams (Sonder/UCSF), Romain (Mekom), Vineet (Mekom), Wamathaga (UCSF), Lousa (Palladium), Zac (Mekom), Grace Potma (OMRS)

O3 Appointments designs: Presentation by Lousa Yogo (Palladium):

Note there are some built-in things to help with Decision Making:

Yellow Flags: help with decision making by person booking the appointment - e.g. with Caroline above, you wouldn't want to book an appointment 6 months from now, because she's already known to have followup/attendance problems. 

Load balancing: Help provider choose a date that's not already going to be hectic


  • How to handle pts who have appointments with multiple services in a day? (Kote)
  • How to update the appointment date if the patient cancelled but is coming another day? (Eric)

Patient Summary designs: Presentation by Paul Adams (Sonder Design / Ampath)

Paul has been reflecting on the custom HIV Summary widget created by Ampath, which we observed was very loved and heavily used by end users of many types (eg retention, clinician)



2022-03-31 - 

Previous Visit Tab added to Service Queues - by Kennedy Makombe, Palladium


Samuel demo'd support for grouping menu items in the Clinic Dashboard left  nav bar



KEMR 3.x test envi now has HTS forms - not difficult because concepts all ready to go. For their server, added some config

How to configure recommended forms (recommended forms are driven by Visit type)

Visit UUID

Form validation becomes tricky

Task: Next button: First instinct is to press "save" button to go to next page

Onboarding support for BAs to Form Builder: Training video & Login instructions

Ampath: Start visit, triage, clinical consult form


  • Managing lists of patients and tables, along with lists supported by backend

  • Big complicated forms with lots of logic

Lab Lite: Designs shared by Abinhab, Akhil, and Nouman

Trigger event: Patient walks in with a hard-copy result or report in their hand

#of appointments booked should be showing: 

Use api from common O3 appointment module, and we can query that 


2022-03-24 Squad Call

Attendees: Grace Potma, Dennis Kigen, 

Registration of Anonymous Patients / with unknown names: Progress shared by Zac Butko (Mekom) Unable to locate Jira server for this macro. It may be due to Application Link configuration.

API Mocking: Dennis MSW Seamless - inspired by https://kentcdodds.com/blog/stop-mocking-fetch 

Turborepo https://turborepo.org is

Registration: Support for custom text-only attributes Unable to locate Jira server for this macro. It may be due to Application Link configuration. (e.g. Birthplace and Citizenship text support) added by Vineet (Mekom) 


CI Builds taking 22 mins → 7 mins. Reason: Remote computation caching enabled - so anytime you want to re-run stuff in a cache, it can just fetch them when it rebuilds. (Previoiusly needed to re-run the yarn.build command just within the form entry app)

Joshua Nsereko : https://github.com/openmrs/openmrs-esm-patient-management/pull/136 

Dispensing App: This just in: Mike Seaton (PIH) has created a hello-world for the dispensing app!  Still some backend changes to be made, some more planning needed. 

Updates from the field:

Ampath expanded the 3.x pilot to 3 clinics' clinicians (desktop), and 1 triage nurse (tablet) and 1 receptionist (tablet)
PIH Peru is making the vitals form button configurable with an Ampath form (direct request from PIH Peru!) Brandon (PIH). Socios En Salud (SES / PIH Peru, with @Miguel Andres Huamani Pacheco) need an O3 appointments module. 

2022-03-21 Design Call

Dr. Jacob Odihambo

User Feedback on Chrolonogical Timeline feature Maze feedback

Lousa has done some OpenMRS 3.x mockups

Need for an intermediary page before the area-specific dashboard

(Same as left hand nav)


App switcher use case

Left nav convention


Review of Order designs - to get Maze out asap. 

Poll on Meeting Time (because daylight savings change this weekend): https://openmrs.slack.com/archives/CHP5QAE5R/p1646695673757679 

Attendees: Romain, Vineet, Zac, Amos, Arther Mugume, Brandon, Burke, Ciaran (Ampath), Daniel (OMRS), Deb (Vol), Donald (Ampath), Fred (_), Dennis (Ampath), Zac (Mekom), Vineet (Mekom), 

Dennis: Queues: Data coming from backend now


Actual patients being called from backend, real priority levels (no longer hard-coded examples), Pt search, Advanced pt search!

Vineet demo'd infinity loading for login locations; changes to implementer tools

Zac demo'd Tree Filtering

Array takes default concept UUID but this can be further config'd in implementer tools

Brandon demo'd linking and new model for Groups

Way to add left nav element using config: Generic extension called navGroup that isn't attached to any one extension by default. Add to pt chart


PR Reviews: 

  • esm-core: Brandon (PIH), Vineet (Mekom), Dennis (Ampath), Deb Nanfuka (Volunteer)
  • esm-patient-chart: Donald (Ampath), 

2022-03-07 Design Call

2022-03-3 Squad Call

  • Attendees: Vineet (Mekom), Grace (OMRS)< Kumuditha (Vol), Deb (Vol), Eric A (Ampath), Samuel (UCSF), Sonia (ICRC), Ciaran (Ampath), Jesse Kyambadde (_), Derrick (Ampath), Irene (Vol), Donald (Ampath), Romain (Mekom), Juliet (Vol), Jushua (Vol), Pius (UCSF), Joseph Kagimu (_), Sumedha (Vol), Zac (Mekom), Ian (Brown), Brandon (PIH), JJ (Ampath), Jon T (Vol) 
  • Announcement re Translation Mappings layer for Ampath Forms Engine, and Custom Component support in Ampath Forms (need to update documentation) https://ampath-forms.vercel.app/ 

  • Weekly Frontend Core PR Contributor Recognition:
    • esm-core: Dennis (Ampath), Donald (Ampath), Ian (Brown), Brandon (PIH)
    • esm-patient-management: Dennis (Ampath), Brandon (PIH), Donald (Ampath)
    • esm-patient-chart: 


2022-02-28 Design Call

Attendees: Grace (OMRS), JJ (Ampath), Ciaran (Ampath), Paul (UCSF), Eric (Ampath), Delphine (ICRC), John Esplana (ICRC), Jon Teich (Vol), Wamz (UCSF), Lousa (Palladium), Romain (Mekom), Zac (Mekom)

  • Maze for Chronological view
  • Appointments Planning
    • ICRC has already used Bahmni Appointments alongside OpenMRS 2.x - that was developed by ThoughtWorks. When user clicks on "Appointments", takes to these screens: https://bahmni.atlassian.net/wiki/spaces/BAH/pages/32604198/Appointment+Scheduling Widgets were developed for ICRC to show on the 2.x User Experience / pt dashboard. 
      • ICRC patient chart appointments-related widgets are here:  
    • Expectation is that we would develop custom widgets for the 3.x patient chart
    • Backend; Would bring in OMOD needed to support Bahmni Appointments on backend. 
      • Plan: Grace set up Appointments team huddle w/ UCSF, Palladium, and Mekom/ICRC reps
  • Referrals Update from Ciaran:  
    • Concern voiced that search bar in orders bar is not so visually obvious. Ciaran to look at calling it out a bit clearer. 
  • Test Results Tree  
    • Discussion on how to visualize nodes in the tree that have no data - Ciaran and Zac to continue online
  • Review of Bahmni Consult Workflow
      • Thoughtful process went into creating this flow for a consultation.
      • But, feedback from users is, would like to see patient data while doing form. 
      • Two key takeaways: 
        • Structure of flow (via the tabs on top)
        • Integration of multiple forms: Ability to add additional Forms (so user doesn't have to pick one specific form from the start)
          • JJ and Wamz: I like this as a clinician because then I can do Diabetes stuff and HIV stuff in one place; don't have to open different form. I can do PMTCT, TB, etc - all that as one workflow.  
          • We could accomplish this by using the existing model of Ampath Forms' "Component Forms" - breaking forms down into smaller units that get pulled in
          • Thinking of these mini-forms as "pages", and a way to bring in those pages

2022-02-25 Squad Call

Attendees: Grace (OMRS), Zac (Mekom), JJ (Ampath), Brandon (PIH), Daniel (OMRS), Deb (Vol), Donald (Ampath), Eric (Ampath), Irene (Vol), Jonathan T (Vol), Lars (UCSF), Pius (UCSF), Pasindu (Vol), Romain (Mekom), Jen (OMRS), Arthur (Vol)

New Epic to Track Backend Needs: Unable to locate Jira server for this macro. It may be due to Application Link configuration. We encourage all devs to create tickets where they feel they are doing acrobatics to get the data they need from the backend. Our frontend team is in the best position to know where things are unnecessarily burdensome when it comes to interactions with the backend


esm-patient-management: Vineet (Mekom), 

esm-patient-chart: Donald (Ampath), Kennedy (Palladium), Dennis (Ampath), Piumal (Vol), Brandon (PIH)

2022-02-21 Design Call

Attendees: Eric A (Ampath), JJ (Ampath), Burke (OMRS), Grace (OMRS), Ciaran (Ampath), Zac (Mekom), Delphine (ICRC), Jonathan T (Vol), Paul (UCSF), Lousa (Palladium)

Clarification of Chart Header Navigation patterns

Need to have 100% consensus about pt chart overlay/nav

Realization that we have some philosophical design questions to clear up

- can user quit a patient chart halfway throgh and come back to it?
- does patient chart render in different ways across different apps (outpatient, pharmacy)
- notifications are always accesssible

Plan for distributing Maze for Chronological View

Paul will 

2022-02-17 Squad Call

Attendees: Grace, Burke, Brandon (PIH), Ciaran (Ampath), Daniel (OMRS), Dennis (Ampath), Derrick (Ampath), Donald (Ampath), Eric (Ampath), fred, Grace B (Vol), Ian (Brown), Jesse Kyambadde, JJ (Ampath), Jonathan T (Vol), Lars (UCSF), Makome Ken (Palladium), Manuel (Mkeom), Pius Piru (UCSF), Samuel Male (UCSF), Settimba (Volunteer), Sharif (Volunteer), Sumedha (Volunteer), Sonia (ICRC), Zac (Mekom) 

Issues: Caching of pt Active Visit stage


  • Ampath Pilot / Clinical Testing update from Eric A: 3 users using! & sharing feedback from 1 week of clinical testing. Issues have been listed & prioritized and are already under development. 
    • Next: Want to introduce Triage form + Differentiated Care Form, and then add Nurse users (smile) 
    • Side navigation while still being able to view pt chart is a compliment. Clinicians finding they can go through chart faster than before. 
  • Donald: fixed form layout and now left nav sticks to left 
  • Dennis: Vitals header title: Abnormal results get flagged
  • Zac: Filtered view! For labs
  • Kennedy Makombe (Palladium): Queues
    • Need home page dashboard switching → once this feature done
    • Notion of "home page" is not super clear. Clarity on where people go when they get to the site. 
  • PR Contributor Recognition:

    • esm-patient-chart: Donald (Ampath), Dennis (Ampath), Zac (Mekom), Piumal (Volunteer), Brandon (PIH), Manuel (Mekom), 
    • esm-patient-management: Dennis (Ampath), Cynthia Kamau (Palladium), Vineet (Mekom), Donald (Ampath)
    • esm-core: Brandon (PIH), Manuel (Mekom), Florian (Mekom)

    Updated Contributing Guidelines 

2022-02-14: Design Call:

Attendees: Paul A (UCSF), Wamz (UCSF), JJ (Ampath), Burke (OMRSInc), Grace (OMRSInc), Ciaran (Ampath), David (PIH), Lousa (Palladium), Zac (Mekom), Dr Jonathan Teich (Volunteer)

  • Figma Update: Still planning to transition from Sketch to Figma in Q1 this year (just building the designs into Figma manually - Carbon doesn't automatically update Figma like it does Sketch → requires manual updates going forward)
  • PIH concerns re Dispensing designs
    • How to handle scenario where patient has a paper Rx, esp. not from this facility/none of your facilities' providers
  • OHRI Work Updates
    • Summary Tile pulled out of the feed; sits above the chronological info
    • Visual view: 
      • Could there be an icon (instead of colored line) to indicate what type of thing happened (e.g. medication)
      • Maze user testing link ready for sharing around tomorrow (thanks Paul) (smile) (smile) (smile) 
      • Concern discussed: just showing only encounters/visits for one type of condition (e.g. only HIV-related visits in the HIV Clinical View) could cause clinician to miss important other visits also going on (e.g. NCD interactions). Wamathaga Kamau & Paul A to discuss and get back to us. 

2022-02-10: Squad Call

Attendees: Brandon (PIH), Grace (OMRS), JJ (Ampath), Anjula (Volunteer), Burke (OMRS), Daniel (OMRS), Deb (Volunteer), Derrick (Ampath), Dimitri (Mekom), Eric (Ampath), Fred, Grace B (Volunteer), Irene N (Volunteer), Jayasanka (Volunteer), Joachim (Volunteer), Jon Teich (Volunteer), Kumuditha (Volunteer), Manuel (Mekom), Pasindu (Volunteer), Piumal (Volunteer), Pius Piru (UCSF), Romain (Mekom), Samuel (UCSF), Seremba, Sharif (Volunteer), Sonia Madureira (ICRC), Sumedha (Volunteer), tendo (Volunteer), Vineet (Mekom), Zac (Mekom)

Offline actions demo by Manuel. Note re updates to Sync API.  Also now preventing manual ID creation in offline mode. 

Workspace refactor done - shared by Brandon (PIH). (New API demo'd last time.) Now possible to launch pt chart with the workspace open (e.g. to kick off workflow of "start visit". Additional props can be propagated. No raise condition btwn workspace and chart. 

Turning Timeline component into first-class citizen - Zac (Mekom)

Proof of concept:

Demo from Vineet (Mekom) of 

Demo of E2E workflow updates from Jayasanka, Piumal (Volunteers). Docker image for 3.x server not running. To discuss online. 

Going to live on HIV Care and Treatment Page.

PR Contributor Recognition:

  • esm-patient-chart: Brandon (PIH), Manuel (Mekom), Donald (Ampath), Zac (Mekom), Psousa (ICRC), Piumal (Volunteer). Release done for patient chart - thanks Brandon!
  • esm-patient-management: Dennis (Ampath), Ian (Brown), Vineet (Mekom), Cynthia (Palladium), Joshua N (Volunteer) (Release now at v 3.1, thanks Brandon and Ian)
  • esm-core: Manuel (Mekom), Vineet (Mekom), Brandon (PIH), Ian (Brown) (Note new FAQ docs, thanks Brandon!)

2022-02-07: Design Call

Attendees: Zac (Mekom), Burke, Eric A (Ampath), Grace, Wamz (UCSF), JJ (Ampath), Lousa (Palladium), Kote (Palladium), Paul A (UCSF), Ciaran (Ampath), Jon T, Delphine (ICRC), David (PIH)

Production Pilot went live at Ampath! Key Feedback Items for this team to be aware of:

  • Simpler Lab View: Want to see a basic / simpler view. Need to uncouple Overview Panels as a primary way of navigating labs. 
    • Clinicians seeing a very specific type of condition will want a simple table with specific labs
    • Clinicians seeing a broad base of patients with many possible conditions are more likely to appreciate the "latest results" inbox experience that the Overview offers
    • Eventually, we want folks to be able to both filter and one simpler view
  • Auto-Update the Page when I add info: Follow up on thursday call

Referrals Update: Ciaran working on this

HIV Summary Visual Updates:

  • Chronological view of Summary (within a Clinical View's context)
    • Leverages Series of Flags defined by Wamz, e.g. High viral load, changes to Enrollment, transferred out, etc. Significant support and interest in this view expressed from Palladium, Ampath, PIH representatives.

  • We Agreed on a new Convention of Action Buttons to increase Efficiency of EMR Use
  • Clarified & agreed on difference between:
    • Dashboard switching
        • Confirmed: My Dashboards is a component convention. And is a vanilla part of Carbon. (In future may also have a "pack" of icons)
    • Dashboard filtering

2022-02-03 Squad call

Attendees: Grace P, Eric A, Anjula, Brandon, Burke, Ciaran, Daniel K, Deb, Donald Kibet, Fred, Ian, Joshua N, Juliet, Lily, Paul Adams, Piumal R, Pius Piru, Sharif, Vineet, Zac, JJ

  • Welcome Zac, new Sr Frontend Dev with Mekom
  • Ampath pilot going live tomorrow! Demo of end-to-end system by Eric Achillah. 2 clinicians to start to use. 
  • What npms to release? Donald to confirm and follow up w/ Brandon. 
  • only 2 widgets are ampath-specific (e.g. HIV Summary table); the rest are community widgets that were configured or improved in community code directly. 
  • Referrals review on monday
  • PRs this week: Congrats and thanks to Kennedy (Palladium), Cynthia Kamau (Palladium), Donald (Ampath), Dennis (Ampath), Manuel (Mekom), Vineet (Mekom), Brandon (PIH), Piumal (Volunteer), Ian (Brown)
  • Brandon announced work on performance improvement
  • Celebrate completed PRs (congratulate and request issues be closed)


2022-01-31: Design Call




Attendees: Grace, Eric A, Sonia Maduerira, Donald Kibet, Anjula Shanaka, Brandon, Burke, Ciaran, Daniel, Fred, Ian, Irene, Jayasanka, JJ, Jonathan T, Juliet, Kumuditha Karunarathna, Lilian Mathu, Manuel Romer, Pius Piru, Samuel Male, Settimba, Sumedha Karunarathna

Ampath shared they are almost ready for the production pilot. 3.x now running on top of production DB. Expecting to go live with patient care within the next few weeks. 

Donald shared a few bug fixes and that now Text-based test results (e.g. postive, negative, indeterminate) now showing. 

Vineet shared responsiveness fixes for the registration page, and editing of relationships. 

Kumuditha and Jayasanka shared accomplishment: Patient search now running on dockerized environment. Fixed 2min load time for some features. Next: get existing tests to run in there as well. 

Brandon: re-working workspace extension system in esm-patient-common-lib. Self-contained system with self-contained API. 'launchPatientWorkspace(' function now accepts 'additionalProps?' object. Means groups like OHRI won't have to have additional layer in order to pass props through; can launch props directly on the workspace. Also updates to 'registerWorkspace function' (currently workspaces have been a type of extension; now will have their own API.)

Timeline of readiness: Within next week. 

Breakage: Any uses of detach will need to be changed. 

2022-01-Design Call

In-chart Notifications 

Opening Forms from Form icon

Clinical views

2022-01-20 Squad Call

Attendees: Grace, Brandon, Anjula, Burke, Ciaran, Daniel K, David, Donald, Ian, Irene, Jayasanka, Jesse Kyambadde, JJ, Juliet, Kumuditha, Manuel, Pasindu, Piumal, Pius, Samuel, Sumedha, Vineet

New PR approval strategy - JJ approving small things so quickly unblocked

New slack channels: #openmrs3-helpme (support for folks getting started with 3.x), and #tech-tips (any tech content folks have found helpful and interesting and would like to share)


  • Whitelabelling / brand color changes: Config has been set up to change these relatively easily. Most can be handled without code through the implementer tool.