I designed and prototyped this concept using an AI-assisted code-first workflow to move quickly without sacrificing fidelity. I stood up a lightweight Next.js application and used prompt-based iteration in Windsurf to rapidly generate and refine flows, allowing the prototype to behave like a real system rather than a static mock.
This approach made it possible to explore scheduling intelligence, constraints, and system behavior at a level of realism that informed product thinking, not just interface layout.

Appointment creation in clinical software is typically calendar-first. Users search for time before they think about the patient. This exploration proposes a system-driven, patient-first model where users express intent and constraints first, and the system finds valid time options.
In many clinical systems, appointment creation starts with the calendar. Staff search visually for an open slot, apply filters, scan availability, then attach a patient to the selected time.
This model assumes that time is the primary object. In reality, the primary object is the patient and their needs. The calendar is a constraint, not the goal.
This mismatch creates friction and cognitive load, particularly in busy environments where staff juggle calls, in-person requests, and appointments with varying lengths, requirements, and system constraints.
I wanted to explore what would happen if we inverted the model.
Appointment creation starts with scanning the calendar instead of understanding the patient and their needs. This reverses the natural workflow of front-desk staff and pushes complexity onto people rather than the system. The software becomes a passive display of availability instead of an active participant in solving the scheduling problem.
Instead of asking users to find time, we can ask them to express constraints like appointment type, appointment length, patient availability, preferred staff member, and required room.
The system can then search across availability, rules, and constraints to present valid time options.
The user becomes a decision-maker, not a scanner.
In a calendar-first model, the flow starts with empty time instead of the patient. Staff scan availability, adjust filters, and mentally track options while switching context to find the patient and confirm whether a selected slot actually fits their needs. What should be a matching problem becomes a memory and coordination problem. As appointment types, rules, and resource dependencies increase, the workflow becomes fragile.

In a patient-first model, the flow begins with the patient rather than empty time. Staff describe the appointment's intent and constraints, and the system searches across availability, rules, and resources to identify valid time options.
In this model, the system takes on the responsibility of validating rules, searching availability, and proposing viable options, while staff focus on confirming intent with the patient.

I used Windsurf with structured prompts to generate a clickable Next.js prototype quickly. This allowed me to explore interaction patterns without heavy engineering involvement, iterate on flow structure and language rapidly, and focus on system behavior rather than visual polish.
The prototype simulated patient-first initiation, constraint-driven input, system-generated time options, and calendar attribution after confirmation.

The solution reframes appointment creation as a matching problem: staff define the intent and constraints, and the system does the heavy lifting to surface valid options. This reduces scanning, prevents conflicts, and makes scheduling more consistent as rules and resources grow.
Explore the prototypeBegin in the patient context to review recent activity and current bookings before acting.
Each page has an annotations feature to assist designers, developers and product managers when refining the design.
The system evaluates availability and rules, then returns a small ranked set of valid times to choose from.
Selecting an option creates the appointment, assigns it to the correct calendar block, and confirms success.
I presented the concept and prototype to product and leadership stakeholders. The feedback was positive, particularly around the clarity of the mental model shift, the reduction of manual scanning and guesswork, and the alignment with long-term system scalability.
At the same time, there was healthy caution. This represents a fundamental shift in how users think about scheduling. It touches workflows, habits, training, and expectations across the organization.
This is not a small change.
This project changed how I think about workflow design in complex systems.
Many UX problems are actually system role problems.
Shifting responsibility from humans to software often requires changing mental models, not just interfaces.
The hardest part of innovation is not design or technology, but adoption.
This concept points toward a future where software does more of the heavy lifting, allowing humans to focus on judgment, conversation, and care. It is aspirational, but it is also realistic about the cost of change.
This concept is not currently on the roadmap.
It exists as a validated idea, a working prototype, and a shared reference point for future discussions.
If and when scheduling is revisited at a system level, this exploration provides a foundation for thinking differently about what scheduling can be.