C3 JupyterLab Documentation Search

Helping accelerate AI development

A 0-1 feature to improve Python documentation search & access, and help streamline data science pipeline execution.

My Role

My Role

Product designer

Product designer

Achievement

Achievement

-28% queries

-28% queries

Target user

Target user

C3 DS team

C3 DS team

Timeline

Timeline

Q2 2023

Q2 2023

The problem

C3 data scientists use JupyterLab to develop AI/ML models. However, they can't conveniently search documentation in it to properly understand & implement code. The process was non-user friendly, and slowed down productivity.

Solution & Impact

A new side panel search feature in JupyterLab, allowing one stop search and browsing of documentation entries and sub-sections acorss projects.

Overall design process

This project was high impact, due to its scope, I worked with DS, devs, and PMs to understand problem space, ensure technical feasibility of the solution, and discuss scaling to other developer products like VSCode.

My design execution was based on 7 rounds of rapid prototyping, direct user feedbacks, stakeholder inputs, and idea refinement.

Design decisions

Major design ideas addressing specific pain points in the user flow

Design iteration 1

Entry point & documentation hierarchy

One challenge for the project was designing a complex user experience within JupyterLab & C3 design system's constraints. I designed different entry points for the docmentation search, and eventually chose the side panel since many other custom features were also contained and accessed through it. I also settled with using tabs and custom tables to show sub-sections of documentation content.

Design iteration 2

New search component

With limited real estate space, I explored various designs for the search based on user feedbacks. The ideal search paradigm would be scope & hierarchy agnostic, but existing components like dropdown search couldn't support it.

72% of tested users also thought workarounds were still confusing and had too much steps. So I consulted with developers, and designed a new side panel search component.

Design iteration 3

Boosting documentation discovery

Each C3 Jupyter notebook corresponds to a C3 application package. Previously, you could only search for documentation within the scope of the notebook you're working on.

Looking for documentation from packages required opening and switching between many extra notebooks. I prototyped a "package viewer" mini-feature integrated in the doc search experience so cross-source documentation search can also be handled in the same space.

Final design

No more head scratching

Documentation search in Jupyter used to feel like coding: Run the command, scroll endlessly to find what you need… and you couldn't even search if you forgot the documentation name.

Now, data scientists have a modern, visual side panel to search and access documentation. Know what you're looking for? Search directly! Struggling to remember documentation name? Fuzzy search got you covered as well.

More shortcuts

Mini features such as application package viewer & bookmarks allow users to access documentation from different sources more easily. Through interaction with the features, data scientists with less experience could also better understand C3's application package concept.

Overall results

~1.5 min

Avg time saved per search

-28%

Related forum questions

60+

Data scientists benefited