ES Get in touch arrow_forward
apps Switch project expand_more

Painometer

at URV · e-health Android 2018–2019 Published
Painometer entry screen showing the pain-level scale and body region selector
01

The Product

Painometer is a smartphone app used to assess and record pain intensity over time. It brings together four of the most widely used pain-intensity scales and lets users mark where in the body the pain is felt, building a record they can review as it evolves.

Developed and tested by the ALGOS research group, linked to the Universitat Rovira i Virgili (URV), Painometer is aimed at both health professionals and patients and is grounded in scientific evidence, with its scales validated through peer-reviewed research. The app is not a substitute for the doctor-patient relationship.

02

Features

The app turns established clinical pain scales into a simple, repeatable digital assessment. Its main features include:

Pain Intensity Scales

The app includes four of the most widely used scales for measuring pain intensity: the Faces Pain Scale-Revised (FPS-R), the Numerical Rating Scale (NRS-11), the Visual Analogue Scale (VAS), and the Coloured Analogue Scale (CAS). Each scale offers its own purpose-built interaction, from choosing a facial expression, to tapping a number from 0 to 10, to dragging along a colour gradient, so users can report their pain in the format that suits them best. Users can also view each scale before using it.

Body Pain Map

Users can indicate where in the body they feel pain on an interactive body figure, marking the specific points where pain is located and switching the view to cover the whole body, so each measurement is tied to a precise location.

Records and Progress Chart

For each body location, the app records pain intensity over time and presents it as a chart, showing the number of records and the trend across a selectable period, such as the full history, so users and clinicians can follow how pain evolves.

Multilingual Support

Settings and instructions are available in several languages: Catalan, Spanish, French, English, and Portuguese.

03

My Role

I worked as a developer on Painometer, an existing Android app, contributing new features, maintaining its existing functionality, and improving its performance.

Feature Development and Maintenance

I developed new features following the MVVM pattern with Java 8 and RxJava, maintained and improved the app's existing functionality, and fixed bugs to keep it stable and reliable.

Performance Optimization

I worked on optimizing the app's performance, making it faster and more responsive.

Database Migration

I led the migration of the app's local persistence from a NoSQL database (Realm) to Room, a piece of work I carried out end to end entirely on my own.

04

Technical Stack

AndroidJava 8RxJavaMVVMRoom (migrated from Realm)Firebase Realtime DatabaseFirebase AnalyticsFirebase Crash Reporting