UX RESEARCH INTERACTION DESIGN UX/UI

Designing a WYSIWYG table widget

The context

Venngage is a graphic design tool that specializes in infographics


Venngage is a web-based SaaS graphic design tool. Many of Venngage’s core users use the tool to create documents like infographics, reports, presentations, and diagrams to aid communication at work.

Many of these designs feature data, visualized in charts and tables. Users often cite Venngage’s data visualization capabilities as a key reason they choose Venngage over similar competitors. With that in mind, we want to ensure that our data-focused templates are as easy to edit as possible.

An example of a Venngage report template featuring a table widget.

The pain points

The existing table widget was confusing and tedious to edit


I performed a customer support analysis, collected observations from a contextual inquiry, and performed my own usability evaluation to come up with the following key pain points.

Observations and user complaints regarding the old table widget

Resizing:

Scrolling:

Small editing area not optimal for much content:

A gif showing table editing with the original table widget.

The final solution


Users can select, view, and edit the table via interactions directly on the canvas:

Updated resizing behaviour and affordances:

A gif showing table editing with the new table widget, with editing options in an in-context toolbar.

The next steps


In the first slice of this project, we reused existing patterns (buttons in the in-context toolbar and in a right-click context menu) to surface options for adding and deleting rows and columns to the user. Since these approaches were consistent with common spreadsheet tools and didn't require any new, complex UI, we decided they'd be sufficient for a v1 and quick to build.

The context menu shown on right-click of a table cell.

Through usability testing we observed that these actions are used very frequently during a typical table editing flow. Because of this, we think it's worthwhile to remove some friction in this flow by adding some affordances directly on the canvas to:

We're hoping to build these into a v2 soon.

The table widget with add and delete buttons.