Bulk Edits Made Simple
Company
JOOR
Role
UX/UI Design & Research
Product
Wholesale platform (B2B)
Platform
Web
Problem
Users couldn't use existing 'Customer Groups' to manage linesheet visibility across multiple retailers, making the setup process tedious and inefficient.
Solution
Improved existing flow by changing selection patterns, introducing a system to create groups and filter them out.
Feature/Specs
Bulk setup, new radio buttons, ability to leverage customer groups, new filtering system.
Impact
JOOR & Linesheet Visibility
JOOR is a wholesale fashion platform used by brands and retailers to showcase and buy seasonal collections.
Linesheet visibility decides who can actually see those collections (aka linesheets), and before this project that setup process was slow, manual, and infuriating.
The Problem
If a brand wanted to make a linesheet visible to a selected group of retailers, they had to manually pick those retailers every single time.
The platform didn’t remember those selections. There was no way to reuse or automate groups. And although “Customer Groups” technically existed, they weren’t integrated into the visibility flow at all.
This created a messy, repetitive process that scaled terribly as soon as a brand had more than a handful of retailers. Launching new collections took longer than it should.
Pain points I focused on:
Strategic Opportunity
Here’s the thing: the platform already had Customer Groups — but they were underused and disconnected from the visibility setup.
This wasn’t a problem that needed a brand-new feature. It needed a smarter connection between existing systems. By extending the use of Customer Groups and simplifying the interface, we could solve a major pain point with minimal engineering overhead.
That became the strategy:
Research & Insight
I didn’t want to guess. So we ran quick user feedback sessions and internal tests to understand how users handled large datasets elsewhere in the product.
Unsurprisingly, they consistently preferred the dual-listbox UI — an old-school but solid pattern that let them search, filter, and select in bulk without getting lost.
We also discovered that:
This shaped the direction: lean on what users already know, don’t reinvent the wheel.
Strategic Decisions & Trade-offs
Initial vision
Scaling Back
But scope matters. Duplicating functionality that already existed elsewhere would slow us down, and the complexity would balloon fast.
So we trimmed:
This approach let us deliver value quickly without over-engineering.
Understanding the terrain
Before touching any UI, I mapped out the existing visibility flow to understand where we could intervene with minimal disruption. The goal wasn’t to redesign everything — it was to thread the new functionality into the current system in a way that felt natural.
I captured the critical screens, highlighted the touch-points that mattered, and quickly spotted the bottlenecks: too many clicks, duplicated effort, and unclear states.
A Scalable Flow
I designed the new flow with two phases in mind:
Phase 2 looked great on paper but came with added complexity and resource demands. Rather than letting the perfect delay the useful, I scoped it out for a future iteration.
This intentional phasing gave us a clear, implementable MVP without boxing the product into a dead end.
Simplifying the UI
The original modal used two toggles (Public + All Connections) that interacted in unpredictable ways. Making a linesheet private meant turning both off — a small but maddening detail.
The redesign replaced toggles with radio buttons, making the logic clear and linear:
No more toggles fighting each other. No more “what just happened?” moments.
Exploring Interaction Patterns
I explored several different approaches to refine how users select and move connections between lists. The goal wasn’t to make it “fancier,” but to remove friction without introducing new complexity.
Both were discarded not because they were “bad ideas,” but because they introduced more cognitive load than they solved.
The dual-listbox won because it balanced clarity, speed, and familiarity. Users already trusted it. It didn’t need explaining.
Leveraging Familiar Patterns
For the “Select Connections” flow, I embedded the dual-listbox UI users already trusted, added filters for Customer Groups and Price Type, and improved the layout to reduce visual noise.
I explored other approaches:
Dual-listbox won because it hit the sweet spot between usability, speed, and technical feasibility.
Solution & Rollout
Phase 1
Phase 2
Future
Impact
But the real impact wasn’t just about speed — it was about making a frustrating task feel effortless. By aligning product strategy, design, and user behaviour, we turned a tedious process into something brands barely have to think about.
Takeaways