Building a 0→1 AI-Native Caselaw Search Platform
B2C SaaS AI Start-up
Shipped Since 2024

New Situation
Contact Us
Terms of Service
As I strolled through the mall, making my way toward the food court, I spotted a “wet floor” sign in the distance. But just...
It was early morning, and I was cycling along the Riverside trail at a steady pace. As I approached a sharp bend, another ...
While browsing the shelves at my local grocery store, I reached up to grab a can. Out of nowhere, several items toppled ...
As I stepped into the crosswalk with the light in my favor, a car suddenly rounded the corner without yielding, coming ...
I was walking down the street when a drunk person grabbed me by the collar and started a fight. In the middle of it ...
I was heading west along Maple Street in the evening, driving carefully as usual. But then, I suddenly saw friend’s pickup ...
Lawlow
I was walking down the street when a drunk person grabbed me by the collar and started a fight. In the middle of it, I lost my temper and punched them in the face. I'm completely fine, but now they're saying they have a facial fracture and are asking me to cover their medical bills. What should I do?
My situation
Show less
You might also ask
Tap to refine and search
The 'Issue' and 'Conclusion' sections are AI-generated and may contain errors. Please refer to the original case content for accurate information as provided by the court.
The defendant got into a dispute with the victim while stealing the victim's belongings from a warehouse. The defendant grabbed the victim by the throat and struck their face and eyes multiple times, causing cervical injuries requiring approximately 14 days of treatment.
The defendant claimed to have only grabbed the victim's throat in self-defense. However, the court found, based on testimony and medical records, that the defendant did strike the victim's face, and ruled the act was mutual aggression rather than self-defense.
The court found the defendant guilty of assault and sentenced them to a fine of 1,000,000 KRW. Failure to pay the fine would result in detention at a labor facility for a specified period.
Problem
Facts
Judgement
#1
Relevance
94%
Access the Original
Copy to Clipboard
Uijeongbu District Court 2015.12.17 2014Go-Jeong2438 Assault and Battery
During an argument over unpaid drinks, the victim struck the defendant's face first. The defendant grabbed the victim by the collar and punched their face 4–5 times, causing a head contusion. The defendant argued self-defense and claimed diminished responsibility due to intoxication.
The court found that the defendant's punch exceeded passive defense and constituted active retaliation. The degree of intoxication was not sufficient to negate criminal responsibility. The act was deemed mutual aggression rather than self-defense, referencing Supreme Court precedent (2000Do228).
The court dismissed the appeal and upheld the original conviction for bodily injury. Both the self-defense claim and the diminished responsibility claim were rejected, and criminal liability was maintained.
Problem
Facts
Judgement
#2
Relevance
91%
Access the Original
Copy to Clipboard
Daegu District Court 2014.10.31 2014No1521
Bodily Injury
The other person started the fight while drunk, grabbing the defendant first. The defendant then punched back, causing facial fractures. Are there rulings that decided whether this counts as self-defense or went too far?
Show less
Was it self-defense or too far?
A
Both sides got into a fight, but one person is now claiming medical costs for a broken face. Are there similar cases that show how courts decided who was at fault and how much they had to pay?
Who pays for the injuries?
B
Overview
From Concept to v1: Launching a Caselaw Research Platform
Lawlow is an AI legal research platform enabling non-lawyers to easily access caselaw relevant to their personal legal situations through plain-language. I joined as the first and only designer and stayed for 2.5 years, shaping every part of the product: the brand, the design system, and 40+ features across web and mobile, working side by side with 3 engineers.
In this case study, I’ll zoom in on the highest-stakes flow in the core search experience: turning a person’s own story into relevant case law.
Team
Product Designer (me!)
AI Engineer (Product Owner)
Back-end developer
Front-end developer
Marketer
Skills
Product Strategy
Visual & Interaction Design
Design System
Usability Test
Tools
Figma, Jira, Miro
Duration
2024.01-2026.06
A note on this case study
Lawlow launched in Korea, in Korean. I translated the screens and examples into English, so the court cases you’ll see come from Korean courts.
Outcomes
Non-lawyers’ easy access to relevant case law in minutes
25,000+
people searched
since launch
↓
83%
time to relevant cases
traditional caselaw search web vs. Lawlow
Measured impact of key design decisions
37.5
66.7%
search satisfaction
after the conversational flow (part 1)
13.0
22.2%
same-session re-search
after suggested questions (part 2)
Problem
Finding answers to personal legal questions wasn’t easy
When something legal happens, people want to know if anyone’s been in their situation, and how it turned out. But every way to find out has a catch.
Consulting a lawyer
Costly to access
Googling
Too many variables to match
Asking an AI chatbot
Hard to trust
And the most reliable path: searching case law sites...
Free to use, but built for people who speak legal

So we flipped it: start from people’s stories, not legal terms.
Solution Preview
Narrative in, structured cases out.
We replaced legal search syntax with narrative input, and structured every result so non-experts could scan it.

AFTER THE BETA LAUNCH...
‘In your own words’ turned out to be the hard part.
We assumed that letting people describe their situation freely would give us the context needed to find relevant cases. But many users entered only a few keywords or a single sentence.

After talking with users...
Many users didn’t connect more context with better results.
When all they had was a simple prompt saying ‘share the details’, people fell back on search-engine habits, refining keywords instead of describing what happened. The context they left out was exactly what we needed to find more similar cases.
Initial Search UI
Just made my keywords
more specific. That’s how
I’m used to searching.
“
How might we help users share relevant details
without knowing what matters legally?
Design Decision 1
Show what a useful description looks like.
I introduced writing examples alongside the input field to help users move beyond brief queries and understand what context to include when describing their situation.
Shipped: Case-specific examples
Broad topics with relatable examples that are relevant enough to read, and just one tap away.
Explorations: How specific should the examples be?
Started with: General examples
It showed how much detail to share, but examples unrelated to their own experience might not feel worth reading, so we explored ways to make them more relevant.
Pushed further: Topic + subtopic
So we tried narrowing examples down for closer matches. But users had to classify their legal situation before they could even see one, potentially making it harder to get started.
Validation: Examples helped users share more context.
We tested with 8 participants, comparing what they wrote without an example and with a case-specific one. With examples, their inputs were ~3× longer and included the details that decide a case. Below is one participant’s actual input (translated from Korean).
got assaulted by a drunk guy on the street.
Without examples
a drunk guy came up to me on the street and said he’d give me money if i fought him and won. i tried to ignore him and walk past but he shoved my shoulder and that’s how the fight started. my lip got split a little and now he’s saying his cheekbone is fractured and wants me to pay his hospital bills.
How the fight started
What the other party demanded
Injuries on both sides
With case-specific examples
Limitation: Examples helped, but users still had to apply them to their own situation and figure out what was missing.
Design Decision 2
Shift the work from the user to the system.
Instead of asking users to figure out what was missing, I designed the product to notice the gaps in the user’s story and ask targeted follow-up questions, one at a time.
Shipped: Conversation intake flow
When key details are missing, the system asks for them, one at a time, before searching.
What details should the system check?
To ask useful follow-up questions, the system first needed a way to recognize what was missing.
Situation &
Parties
Outcome &
Impact
Supporting
Information
3 shared areas
Case-specific
Context 1
Case-specific
Context 2
2 case-specific contexts
1. A shared baseline + case-specific variables
When I looked into what the system needed to ask, I found that some details mattered across cases, while others were case-specific, like injury severity in assault cases or stolen items in theft cases. Based on this, I defined 5 checkpoints.
2. Scale the framework across case types
Next, I needed to apply this framework across different case types. I used AI to expand the case-specific checkpoints across 100 case types, so the underlying interaction stays consistent while the questions adapt to each case.
Adapt the conversation to the context and user needs.
With the checkpoints in place, the next question was how to use them in the conversation. I was balancing enough context for good results against the friction every extra question adds. If it felt like filling out a form, people might just leave. So follow-ups only show up when they’re actually needed.
A. Enough context → Search directly
Skip follow-ups when the query already covers the checkpoints.
B. Missing context → Ask a follow-up
Ask for missing details, while keeping the option to search as is.
Make the search context visible and adjustable.
As the AI updated the query throughout the conversation, I wanted users to stay in control of what would be searched. We also found that similar wording could surface cases that missed the legal issue that mattered, so we had the AI pull out the key legal issues to guide the search. I made both visible so users could review and adjust them for a more targeted search.
A. Review the evolving context
Review each update and search with the latest or an earlier one.
B. Refine the legal search points
Remove, add, or edit the AI’s legal search points before searching.
After we introduced conversational intake, the user-rated search satisfaction increased from 37.5% to 66.7%. But, when the first search didn’t give users what they needed, many still left without trying again.
Design Decision 3
Give users a next step when the first search falls short.
Users could already edit their search or start a new one, but still had to figure out what to ask differently. We introduced AI-suggested questions alongside the results to help them explore a different angle or go deeper without coming up with the next question themselves.
Shipped: AI-suggested questions
Offer relevant directions for the next search, right alongside the results.
When should suggested questions appear?
We wanted to make suggestions easy to act on, so we compared two placements in the results flow, weighing visibility against users’ readiness to act.
Explored: Alongside the original query
Easy to notice and clearly tied to what users wrote. But before seeing their results, users might not know if the suggestions were worth exploring.
Shipped: Between results
After reviewing the top result, users could see what was useful or still missing, which helped them judge which direction was worth exploring next.
Make the next search easier while keeping users in control.
We then explored how much each suggestion should do for users, weighing how quickly they could act against how much control they kept over the search.
You might also ask
Tips
You punched back after being grabbed first. Whether that counts as self-defense or excessive force is likely what determines your legal exposure here.
They're claiming medical costs for a facial fracture. Courts look at who provoked the fight and how severe the response was — that's what decides financial liability.
A
Was it self-defense or too far?
B
Who pays for the injuries?
Explored: Suggest a direction
It explained which angle to explore and why it mattered. But users still had to write the next query themselves, leaving an extra step between understanding and acting.
Explored: Search directly
So we turned each suggestion into a complete question that searched in one tap. But if the AI misread their situation, users had no chance to correct it, and could only settle for the results or start over.
Shipped: Review & edit before searching
One tap fills in a ready-made question, and users can adjust the details before searching. It keeps the speed of a complete question while leaving users in control of what gets searched.
Outcomes: After we introduced AI-suggested questions, the same-session re-search rate went up from 13.0% to 22.2%. Instead of leaving after the first search, more users stayed and kept exploring their situation.
Takeaways
Walking away with valuable learnings...
1. Designing an AI experience meant taking responsibility for how it works underneath.
2. Thinking through the whole flow helped reduce friction.
3. Guiding users well matters as much as what the AI can do.

2024, the night we stayed up to launch our beta

2026, one of our weekly team meetings, me joining remotely during grad school