# Blank state improvements

**URL:** https://discuss.tryton.org/t/blank-state-improvements/312
**Category:** Ideas
**Created:** [March 7, 2017, 4:04pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312 "2017-03-07T16:04:00Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [March 7, 2017, 4:04pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/1 "2017-03-07T16:04:00Z")

</div>

I open this topic to collect ideas on how to improve the “blank state” of Tryton.  
The “blank state” is the screen people see when using the application for the first time. In Tryton it can happen at any time because a module can be activated at any time and so this module could create new screen which will be empty.

Here are some thoughts about this topic: [The Blank Slate | Getting Real](https://basecamp.com/gettingreal/09.4-the-blank-slate)

---

<div class="post-metadata">

### Author: ![pokoli](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/pokoli/32/22_2.png) [@pokoli](https://discuss.tryton.org/u/pokoli)
#### Post date: [March 8, 2017, 9:06am UTC](https://discuss.tryton.org/t/blank-state-improvements/312/2 "2017-03-08T09:06:35Z")

</div>

In order to explain what modules do and what data they required we should create configuration wizards which explain the new activated features and provide shortcuts in order to load the new required data. Some examples may be:

- Load some parties in the database when installing parties (directly using a form or with csv import)
- Create products when installing product module
- Create boms when installing production module

Of course if the all of the 3 modules are installed on the database, the wizards should take care the module dependency. I don’t know if using the sequence field is enough.

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [March 8, 2017, 9:13am UTC](https://discuss.tryton.org/t/blank-state-improvements/312/3 "2017-03-08T09:13:14Z")

</div>

> [@pokoli](#):
>
> we should create configuration wizards which explain the new activated features

I do not think it is very good UX to have wizard because it does not help to discover the UI, it is a blocking workflow (the current necessary wizards, we have, are already a little bit painful).

> [@pokoli](#):
>
> Load some parties in the database when installing parties (directly using a form or with csv import)

I do not see how a new user will be able to load parties without knowing anything else. And it is even more complex (maybe impossible) via CSV (I never did it).

> [@pokoli](#):
>
> Create products when installing product module

Why having a different workflow for blank state? It does not help to learn the UI.

---

<div class="post-metadata">

### Author: ![fmorato](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/fmorato/32/109_2.png) [@fmorato](https://discuss.tryton.org/u/fmorato)
#### Post date: [March 9, 2017, 6:16pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/4 "2017-03-09T18:16:25Z")

</div>

> [@ced](#):
>
> Here are some thoughts about this topic: [Getting Real](https://gettingreal.37signals.com/ch09_The_Blank_Slate.php)

A new view that inherits the wizard could be created to display screenshots of the module with data, explain concepts and go on a walk through of the UI.

The walk through could be similar to [intro.js](http://introjs.com/) for sao. I don’t know if this is possible in GTK.

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [March 9, 2017, 11:12pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/5 "2017-03-09T23:12:11Z")

</div>

> [@fmorato](#):
>
> A new view that inherits the wizard could be created to display screenshots of the module with data

I’m not sure to understand what you explain.  
But I’m not sure that screenshots are relevant.

> [@fmorato](#):
>
> explain concepts

About that, I thought that the first time a user open an empty list, we could display instead it, a small text explaining what should be there.

> [@fmorato](#):
>
> The walk through could be similar to intro.js for sao. I don’t know if this is possible in GTK.

This could be interesting to have a format to store similar scenario that could be run on both clients. Because of the specific design of both client, I think we can not reuse an existing library.

---

<div class="post-metadata">

### Author: ![pokoli](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/pokoli/32/22_2.png) [@pokoli](https://discuss.tryton.org/u/pokoli)
#### Post date: [February 26, 2020, 9:21pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/6 "2020-02-26T21:21:56Z")

</div>

> [@ced](#):
>
> About that, I thought that the first time a user open an empty list, we could display instead it, a small text explaining what should be there.

After re-reading the post, I think this is the only option that we have to explain the user what he has to fill in each screen. For example, for price list we can add: “Create records to define different sets of prices for each customer”.

---

<div class="post-metadata">

### Author: ![pokoli](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/pokoli/32/22_2.png) [@pokoli](https://discuss.tryton.org/u/pokoli)
#### Post date: [March 21, 2020, 6:50pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/7 "2020-03-21T18:50:15Z")

</div>

Here are two usefull links for the topic:

> **[13 Blank State Examples You Can Use to Improve User Experience During Onboarding](https://www.innertrends.com/blog/blank-state-examples)**
>
> What do companies show their users after they finish the onboarding process? We picked 20 SaaS companies and analyzed their blanks state pages.

> **[4 empty state best practices to improve your UX design - Justinmind](https://www.justinmind.com/blog/everything-you-need-to-know-about-empty-state-design-1/)**
>
> Empty states are a way to improve the UX design of your product, from onboarding to encouraging users to interact with your app. Here’s what you need to know

After reading them I think the best option for tryton is to add a Translatable text on the Model, which will be used as **call to action** to let the user know which kind of records should be created on the screen.

Another option is to include a link to the module documentation but this will not work for third party modules.

---

<div class="post-metadata">

### Author: ![nicoe](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/nicoe/32/2880_2.png) [@nicoe](https://discuss.tryton.org/u/nicoe)
#### Post date: [August 6, 2026, 3:33pm UTC](https://discuss.tryton.org/t/blank-state-improvements/312/8 "2026-08-06T15:33:07Z")

</div>

I’m working on making the blank state of anything list related a bit better.

The idea is to put an overlay over the list with a generic message saying that there is no records yet. And if the user has the necessary access rights then we trigger the creation process of the records. So for the O2M / M2M in a normal view it will pop up the form ; when the O2M is in editable view, a new line will appear with the focus on the first editable field.
