Core

CARE 3.1: What's New

CARE logo

Release overview · Backend + Frontend

CARE 3.1

You can now configure CARE at every level: forms, terminology, automation and care coordination.

care · ENG-737-backup · care_fe · 3.1/base · October 2026

What’s inside

Six themes, one release

01

Configurable forms

Scoped, versioned forms, a studio and a new form engine

02

Automation

A rules engine, a no-code rule editor and expiring tags

03

Care coordination

Referrals end to end, workspaces and encounter dashboards

04

Clinical records

Immunization programs, procedures and observations

05

Platform

careui, accessibility, an App Store and staff profiles

06

Registry

Disease and program registries, filled automatically

CARE

02

01 · Configurable forms

Every questionnaire now has a scope

instance

Shared by every facility

facility

Owned by one facility

facility_organization

Owned by a department

user

Personal to one user, within a facility

Slugs are unique per scope

Two facilities can each have their own triage form.

Shared through organizations

Access follows the organization tree, both facility and geographic.

Patient forms stay global

Questionnaires about a patient are only allowed at instance level.

CARE

03

01 · Configurable forms

Each change to the questions creates a new revision

revision 1

Frozen snapshot

revision 2

Frozen snapshot

revision 3 · current

The live questionnaire

Hash detects change

A SHA-256 of the questions decides when to bump. Editing the title or description does not.

Old versions are kept

The previous version is copied to a snapshot row that points to the latest one.

Responses show the form they used

Each response stores its revision and is shown with that version’s questions.

CARE

04

01 · Configurable forms · Studio

Build forms in a visual studio

Outline

Search the question tree and reorder questions

Canvas · live preview

The form as clinicians will see it, while you edit

Inspector

Question type, options, visibility rules, validation and automations

Manage

Scoped to an organization, clone, import and export, revision history

Automations

Condition and instruction editors built from the backend’s list of available fields and instructions

Admin actions

Reusable action configurations, managed in Admin

CARE

05

01 · Configurable forms · Studio

Authoring, question by question

Every question type

Text, numbers, choices, dates, quantities and groups

Coded answers

Attach terminology codes to questions and options

Show-if rules

Show a question only when earlier answers match

Import and move

Import from a JSON file or URL; move questions around

Checks before saving

Problems are listed so you can fix them first

Edit or preview

Toggle to the live form, on desktop or mobile

CARE

06

01 · Configurable forms · Filling

Filling forms without losing work

One shared renderer

Show-if rules, repeating answers and groups, validation, and groups that plugins register

Drafts at two levels

Local autosave with a restore bar, plus server drafts. Drafts survive session expiry and are separated by user.

Several forms per session

Submission errors point to the right field. Action results appear as notifications.

11 structured clinical inputs

Allergy

Diagnosis

Symptom

Prescription

Medication statement

Service request

Charge item

Appointment

Encounter

Files

Time of death

CARE

07

01 · Configurable forms · Filling

Filling, beyond the basics

Repeat anything

Repeating answers and repeating groups of questions

Notes on answers

Add a note to any question while filling

Plugin question groups

Plugins add their own groups, like a dental chart

Scribe built in

Scribe actions are available while you fill

History alongside

Open the patient’s clinical history without leaving

Find responses

Filter submitted forms by author and author role

CARE

08

01 · Configurable forms

Questionnaires for locations, devices and facilities

New subjects

Location

Device

Facility

Referral

Patient (as before)

In the app, facility, location and device pages each get a form picker and a list of their own responses.

POST questionnaire/{id}/submit_resource

One submission saves:

resource_responses

The answers, with the questionnaire revision they used

resource_observation

Coded observations about the resource, with interpretation and ranges

CARE

09

01 · Configurable forms

Value sets facilities can customize

Scoped and inherited

The same four scopes as questionnaires. A child value set adds to its parent’s codes, or turns that off with disable_composition.

A version for each user

Each user picks which version a slug resolves to in each facility. Forms keep referring to the slug.

Faster pickers

Favourites and recent picks for each user. You can expand by slug and preview a search before saving.

set_slug_preference · expand_slug · preview_search · favourites · recent_views

CARE

10

01 · Configurable forms · Terminology

A value set editor that shows its work

Build on a parent

Start from an existing set, then add or remove codes

Rules and filters

Include codes by system, concept or filter

Live preview

See the expanded codes before you save

Verify a code

Check whether a code belongs to the set

Share with departments

Choose which organizations can use each set

Pick your version

Choose which variant you see while filling a form

CARE

11

02 · Automation · New action engine

When a condition is true, CARE takes the action.

Admins write rules: a condition on patient, encounter, appointment or questionnaire data, and the steps to run when it is true.

CARE

12

02 · Automation

Three steps: context, condition, instructions

1 · context

Where the rule runs

Appointment, Patient, Encounter, or a questionnaire submission

2 · condition

A sandboxed expression

Fields like age and gender are fetched only when the expression uses them, and cached

3 · instructions

What CARE does

Tag the patient or encounter, set encounter priority, show a message

Instance or facility level

Rules are merged per context and cached for 24 h

Permission checks per step

Each instruction checks the user’s permissions before it runs

Edited in the studio

The studio builds its rule editor from the contexts, fields and instructions endpoints. Results appear as notifications.

CARE

13

02 · Automation · Rule editor

Writing a rule, without code

Pick a context

Patient, encounter, appointment or a form submission

Build conditions

Rows of field, operator and value, or an expression

Warnings as you go

Problems in a condition are flagged while you build it

Only what fits

Only instructions that work in that context are offered

Smart parameters

Pickers for tags and other inputs, with sensible defaults

See what happened

After submit, each rule’s outcome shows as a notification

CARE

14

02 · Automation

Tags that remove themselves

A tag config can set how long a tag lasts. When the time is up, an hourly job removes the tag. A “Fasting” tag no longer stays on a patient for weeks.

expiry_offset

Days, hours, minutes or seconds

autoset_expiry

Sets the expiry automatically when the tag is added

modification_allowed

Whether users can change the expiry for a single tag

Taggable resources: 12

Patient · Encounter · Location · Account · Service request · Activity definition · Charge item · Charge item definition · Token booking · Prescription · Request order · Delivery order

CARE

15

03 · Care coordination · New

Referrals between teams

referral_availability

A directory of who accepts referrals

  • Targets: a department, a facility, a geographic organization or an outside entity
  • Types: consultation or lab
  • A care team that receives the referrals, and a public flag
  • Request and response questionnaires

referral

One request for one patient

  • Linked to the patient, and to an encounter if there is one
  • Assignees, plus an “assigned to me” inbox
  • A discussion thread built on notes
  • Attached records, and each questionnaire answer saved with a snapshot of its form
CARE

16

03 · Care coordination

Referrals from request to appointment

1 · send

Pick a destination, fill the request form, attach records

2 · triage

Filter the list, assign members, discuss in a thread

3 · respond

A dedicated respond page, response form, uploads

4 · book

Book an appointment directly from the referral

Where it shows up

Patient Referrals tab, encounter Referrals tab and widget, patient appointments

Shared records

Attached records show in place, with access checks for the receiving team

Statuses

pending → in progress → completed, or cancelled or rejected. Responses can be voided.

CARE

17

03 · Care coordination · Referrals

Setting up who receives referrals

Facility settings

List the services that accept referrals

Organizations too

Organizations publish availability and get an inbox

Default care team

Who is assigned to new referrals automatically

Forms per service

Map request and response questionnaires

Facility inbox

All of a facility’s referrals in one filtered list

Public or private

Control who can find and refer to each service

CARE

18

03 · Care coordination

Workspaces and team-aware schedules

Workspaces

Layouts for each role, defined by a JSON template.

  • Same four scopes as forms, shared through organizations
  • Draft, active or archived
  • A saved default workspace for each user

Schedules with teams

A schedule can now list the organizations and care team behind it, not only one practitioner.

  • Organizations must belong to the schedule’s facility
  • The care team uses the same member format as encounters
CARE

19

03 · Care coordination · Encounters

Encounter workspaces made of widgets

Vitals

Form responses

Service requests

Referrals

Pick your workspace

A switcher loads the layouts defined by the backend’s workspace templates

Compact header

Appointment actions in the header. The section picker keeps the selected encounter.

Pick up drafts

Forms in progress show on the encounter, so you can continue where you stopped.

CARE

20

04 · Clinical records · New

Immunization, from policy to dose

immunization/policy

Policy

A schedule template made of nested groups and doses. Each dose sets earliest, due and overdue dates, in days.

Set at instance or facility level.

…/recommendation

Recommendation

What a patient is due for: series, dose number, target diseases and forecast status.

Grouped in the same tree as the policy.

…/record

Record

The dose given: product, site, route, quantity, location and who gave it.

Records whether the patient or another source reported it, and subpotent doses.

In the app: an Immunizations tab on the encounter, a dose record sheet, and “Apply policy”, which builds the full schedule from the date of birth.

CARE

21

04 · Clinical records · Immunization

Design schedules in the app

Template editor

Nested groups and doses, with offsets in days

Vaccine picker

Choose vaccines and diseases from coded lists

Outline view

See the whole schedule at a glance

Clear ownership

Instance or facility policies, with edit rights

Apply in one step

Creates the patient’s full schedule, all or nothing

In clinical history

Immunizations get their own history tab

CARE

22

04 · Clinical records

Procedure history and standalone observations

Procedures

A coded record of past and current procedures for each patient and encounter.

status

outcome

body site

reason

occurrence

primary source

Standalone observations

Observations no longer need a questionnaire response or a diagnostic report. A single vital or score can be recorded on its own.

Errored questionnaire responses now also mark their observations as entered in error.

CARE

23

05 · Platform · Interface

Rebuilt on careui

New UI foundation

24 Radix packages replaced by Base UI. Figtree and Geist Mono variable fonts, plus Lexical rich text.

One sidebar everywhere

The same sidebar for facility, service, location, organization and patient pages, with pinning, hover previews and mobile navigation.

Header slots and command menus

Page actions sit in the workspace header. Command dialogs open as drawers on mobile.

Polish: phone input with country flags, primary-colour focus rings, table spacing, search on the service list, and a wider encounter creation sheet.

CARE

24

05 · Platform · Accessibility

CARE that adapts to you

Colour vision themes

Light

Red–green friendly

Blue–green friendly

More contrast

Stronger text, borders and controls

Font size

From small to larger, app-wide

Less motion

Follow the system, or reduce animation

Saved to you

Applies instantly and follows your account

CARE

25

05 · Platform · New

An App Store for CARE

Find, install and configure plugins from inside CARE.

Browse and search published apps, with tags and publishers

Verified publishers are marked

One-click install, or guided manual setup

Health checks show whether an app’s backend responds

CARE

26

05 · Platform

Structured staff profiles

Qualifications

Degree, registration number and issuing body. Degrees are checked against a list each deployment sets: MBBS, MD, MS, BDS and B.Sc. Nursing by default.

Languages

ISO 639-3 language codes, a CEFR level from A1 to C2, and a preferred flag. Useful for matching staff to patients.

Removed fields (breaking)

  • skills
  • home_facility
  • weekly_working_hours
  • qualification (free text)
  • doctor_experience_commenced_on
  • doctor_medical_council_registration
  • video_connect_link · verified
CARE

27

05 · Platform

Permissions and other changes

New permission sets

Referral, workspace, immunization, value set and questionnaire, each with its own authz module.

Finer access control

Purchase returns and supply deliveries have separate permissions. File uploads and diagnostic reports have stricter checks.

Location tree flags

has_beds and has_sub_locations stay in sync, so the UI knows what to show before it loads the children.

Filters

Users by qualification and language; questionnaire responses; questionnaires and value sets

Inventory

Request orders now return clearer errors

CARE

28

06 · Registry

Registry

Disease and program registries that join patients automatically, through rules and forms.

Configure at any level

Instance-wide programs, or registries that belong to a single facility.

Added by rules

A patient is added automatically when they meet the registry’s criteria.

Added by forms

Submitting a form can add the patient to a registry.

CARE

29

CARE logo

Configurable at every level.

CARE is open source. Review the branch, try it on staging, and share feedback before 3.1 ships.

ohcnetwork/care · ENG-737-backup · ohcnetwork/care_fe · 3.1/base