
TriloDocs is a platform that uses AI to generate Clinical Study Reports (CSRs) from uploaded clinical data tables and structured wizard inputs.
This project expanded existing AI capabilities by introducing:
The requirements were predefined. My role was to translate strict backend constraints into clear, state-safe user experiences.
The challenge
Translating complex backend constraints, while ensuring each feature could ship independently and scale into the next.
The requirements for each feature were strictly predefined, my job was to design how the system would behave, not what it would do. At the same time, each feature had to work as a standalone, shippable product and lay foundations solid enough to carry the next phase forward without having to rework what came before.
Given the scope and technical complexity, the project was divided into three milestones, each designed to be shipped and validated independently.

Milestone 1 (Advanced Table Analysis) delivered a complete, usable feature on itsown. Users could generate structured AI analysis from tables immediately.
Milestone 2 (Guided Text Analysis) extended the system but did not depend onMilestone 1 being perfect. It introduced a new surface while inheriting established patterns from Milestone 1.
Milestone 3 (Dual Path) was additive. It introduced a conceptual layer on top of existing functionality without requiring earlier milestones to be rearchitected
The first milestone introduced structured AI analysis from CSR data tables.
I started by aligning with engineers on the full user flow before touching any
screen design, ensuring the journey was technically grounded from the outset.

The first design challenge was the table selection page. CSRs can contain a very large number of tables, so I needed to design a browsing and filtering experience that allowed users to find and select the right table efficiently, without being overwhelmed by the list. Search, filtering, and clear status, indicators across the table list were central to making this page usable at scale.
To validate the table selection page, I designed two variants of the journey and ran a rapid user testing session.
Variant 1: a complete, filterable list of all available tables, allowing users to browse the full set and select any table to begin or review an analysis
Variant 2: only tables with an existing generated response, with a 'Start New Analysis' CTA to initiate work on a new tableVariant 1 performed better.
Participants found Variant 2 less clear because they could not see all available tables from the first step, losing the overall context of the report they were working on. Variant 1 became the direction taken into production.

The configuration screen needed to support comparative and non-comparative analysis, dynamic addition and removal of inputs, and multi-block configurations, all within a single structured form.

The response page needed to allow users to review and edit the response. It also needed to let users modify the configuration criteria.

Milestone 2 introduces GenAI summaries of non-tabular sections of the CSR.
On the back of the the discussion and alignment with the engineers and product lead, I defined the user flow:

This feature needed to work alongside Table Advanced Analysis. I designed a tabbed interface that lets users switch between the two features seamlessly

The configuration is a guided journey where users select from a few options to define tone, length, and objectives.

Once a draft is generated, users can edit it, save it, restore a previous version, or generate a new version by changing the configuration settings.
Milestone 3 introduced a second AI pathway: deterministic Suggested Narrative. The difference from the previous table analysis is that Suggested Narrative doesn’t require prompts. It can only be generated once per table, and it produces a shorter, narrative summary of the table.
Following the same collaborative process as the previous milestones, I defined the user flow with the engineers and product lead

I explored how to visually and conceptually separate deterministic and generative logic. The separation needed to be clear and available at the beginning of the journey, when a user starts an analysis and when viewing the response.
A complete end-to-end system for CSR Advanced Analysis, across three independently-shippable milestones.