Empty states
The goal of this RFC is to improve the way GLPI is displayed when no data are available and so the first experience with our application.
Demo dashboard
Dashboard page is the first page, after login, a new GLPI administrator will see. It’s currently ugly, not pertinent, even with the demo mode where data are filled.
Current state (11.0):
Worse with dark themes
Possible actions:
Incorporate “Onboarding” here with some pre-defined actions like:
Define entities
Import users
Install GLPI Agent
Create your first ticket categories
Reduce “Fruit salad” effect:
neutral colors for not important data (inventory, for example)
Helpdesk data should incorporate comprehensive colors that alert that match either the status or the criticality (late ticket should be more visible than others)
For dark palette compatibility, we must use color with alpha channel set in our cards’ setup.
Reorganize by “Actionability”.
What is important should appear at the top
The helpdesk, and what the user need to work on
"My Tickets," "Tickets Waiting for Approval," "Late Tickets."
Inventory health, instead of displaying a lot of widgets to list every possible assets and their count, maybe we can switch to something more meaningful
Computers without Antivirus, Licenses Expiring
Merge data in summary cards
1 special Inventory card with all types, we may have also a specific display and not try to make the thing work in all widget type
1 for helpdesk also. We currently have, but it’s a bit ugly in 2025:
We may also here redo a special widget display for this.
Make more personalized widget with static display. Example from tabler.io
It’s very possible to have illustrations made by our designer if needed to beautify a specific widget.
These statements are also valid for other dashboards (Helpdesk one mainly), the default remains the top priority, others dashboard rework may be delayed to another versions.
Default lists
Empty search pages are very empty :p
Note, there are cases where the search result is empty, but the database contains data hidden to the user.
Because entities, default and used criteria, etc.
So we must have a distinct state of initial empty database from filtered results.
We still may create a distinct illustration for the filtered state to “embellish” the page.
A few mockups (illustrations are ugly, not the point) done with Gemini, but in the final implementation of the empty database state, we should also get rid entirely of the header.
For each major object in GLPI, we may improve the default state.
So we need:
An illustration for the concept
A quick test explaining the purpose
An primary button targeting the action which will permits to fill the page (for example, softwares may be filled by installing the agent)
A Learn more link targeting an external doc. Caution this means we may have to maintain the link.
The produced illustrations may be re-used later in presentations, webinars, and also in the help center.
By order or priority, we should have:
Tickets
Introduction text: Tickets allow you to track and resolve user requests efficiently, Keep your helpdesk organized and your users happy.
Help url: https://help.glpi-project.org/documentation/modules/assistance/tickets/ticketopening
Call to action: “Open a ticket” (front/ticket.form.php)
Illustration: Usually help-desk system is represented by a person hearing an headset (headphones + mic) sitting at a desk with a computer in front of him. We can also add a bubble representing the conversation
Computers
Introduction text: Inventory the computers of your structure either manually or automatically gather informations by installing the GLPI Agent.
Help url: https://help.glpi-project.org/documentation/modules/assets/computers
Call to action: Primary: “Create a computer” (front/computer.form.php); Secondary: Install GLPI-Agent (TODO)
Illustration: TODO
Problems
Introduction text: Problems are defined as the underlying cause or potential cause of one or more incidents, distinct from the incidents themselves which are just the symptoms or interruptions.
Help url: https://help.glpi-project.org/documentation/modules/assistance/problems
Call to action: “Create a problem” (front/problem.form.php)
Illustration: TODO
Changes
Introduction text: A Change is any planned update, addition, or removal of an IT component that is managed carefully to avoid disrupting business operations.
Help url: https://help.glpi-project.org/documentation/modules/assistance/changes
Call to action: “Create a change” (front/change.form.php)
Illustration: TODO
Documents
Introduction text: Documents management in GLPI allows to store digital documents or web links sorted under different headings. Uploaded files from tickets are stored here.
Help url: https://help.glpi-project.org/documentation/modules/management/documents
Call to action: “Send a document” (front/document.form.php)
Illustration: We may use a concept of archive where a person puts a files folder inside an archive cabinet.
Projects
Introduction text: Project management in GLPI allows to follow entirely a project's progress by creating tasks and building teams
Help url: https://help.glpi-project.org/documentation/modules/tools/projects
Call to action: “Create a project” (front/project.form.php)
Illustration: A person in front of a “Kanban” board with a few columns, like “To Do”, “In progress” and “Done”
Licences
Data centers
Webhooks
Service levels
Oauth clients
Assets definitions
Receivers
Budgets
Monitors
Softwares
Network devices
Peripheral
Printers
Cartridges
Consumables
Phones
Racks
Suppliers
Contacts
Contracts
Certificates
Domains
Appliances
Database
Clusters
Enclosures
PDUs
Passives devices
Reservations
Unmanaged assets
Cables
Reminders
External Links
RSS Feeds
Recurrent Tickets
Recurrent Changes
Fields unicity
Phone lines
Reports
Saved searches
Also, Setup > Asset definition forms should allow the user to upload an illustration for its custom assets.
More, some page, even containing information and data, may be enhanced by the same concept:
Inventory
API
Authentication
Notifications
404 error
403 error
Forgot password
About modal