Widgets
The widget gallery — every dashboard card, KPI tile, chart widget, list and tracker that ships with Taxi CRM 2026, and how to reuse them.
Taxi CRM 2026 ships a large gallery of ready-made widgets — self-contained cards you can
drop into any page. Every widget on this page lives in widgets.html, built from the kit's
widgetStatsCard1–widgetStatsCard22 PUG mixins (pug/common_pages/mixins/); copy the
compiled card markup of the one you want and paste it into your own page. All widgets are
Bootstrap 5 plus the kit's classes, already styled by the compiled design-system CSS, so they
work anywhere with no extra setup.

Widget categories
The gallery is grouped so you can find what you need quickly:
| Category | Examples | Typical use |
|---|---|---|
| Welcome / profile cards | Driver profile, Fleet Manager greeting | Top-of-dashboard hero with a call to action |
| Performance cards | Driver Performance, Fleet Utilization, Customer Satisfaction | A single headline % with a circular gauge and sub-metrics |
| KPI stat tiles | Revenue, Active Drivers, Bookings, Avg Wait | Compact metric + a trend indicator and a mini chart |
| Breakdown cards | Fare Collection, Fare Breakdown, Trip Analytics, Fleet Status | A total with a stacked progress bar split by category |
| Tracker cards | Income Tracker, Trip Tracker | A sparkline chart with a week-over-week delta |
| Report cards | Trip Report, Statistics | Rich financial/operational tables with a date selector |
| Live trip card | Driver on trip, route stops, fare summary | Real-time pickup → drop tracking with fare math |
| List widgets | Recent Activity, Notifications, Driver Applications, Active Drivers, Recent Customers | Avatar + text + status rows with a View All link |
| Timeline | Today's Timeline | Chronological event feed |
| Calendars | Schedule, Bookings | Month grid with event dots |
| Icon stat tiles | Active Vehicles, GPS Tracking, Airport Trips | Image-icon metric tiles in several visual styles |
Anatomy of a widget
Each widget is a self-contained card with BEM-style classes named after its mixin
(widget-stats-card-N__*). The KPI stat tile (widgetStatsCard13), for example, has a
labelled header, a value with a trend indicator, and a <canvas> mini chart:
<div class="widget-stats-card-13">
<div class="widget-stats-card-13__header">
<span class="widget-stats-card-13__dot widget-stats-card-13__dot--green"></span>
<span class="widget-stats-card-13__label">Revenue</span>
</div>
<div class="widget-stats-card-13__body">
<div class="widget-stats-card-13__value">₹45,280</div>
<div class="widget-stats-card-13__meta">
<span class="widget-stats-card-13__change widget-stats-card-13__change--up">+12.5%</span>
<span>from last week</span>
</div>
</div>
<div class="widget-stats-card-13__chart"><canvas id="statsCard13Chart1"></canvas></div>
</div>Swap the label, value, dot variant (--green / --purple / …) and change direction
(--up / --down) to repurpose it. Icons throughout the kit use Material Symbols Sharp
(material-symbols-sharp).
Colors
Widget accent colors come only from the kit's pale palette (defined in
01-variable.less) — pale red, orange, soft green, teal, purple, blue and yellow. Stick to
these so widgets stay visually consistent across pages. See
CSS System for the variable list.
Charts inside widgets
The tracker, KPI and statistics widgets render real charts with Chart.js — each has a
<canvas> keyed by a chartId and is initialised from assets/js/pages/ui/widgets.js
(widgets.html also loads FullCalendar for its calendar widgets). See
Charts for how chart widgets are wired and how to swap in your own
data.
Reusing a widget
- Open
widgets.htmlin the browser and find the card you want. - Copy that card's compiled markup from the source.
- Paste it into your page inside a row/column (see Layout).
- Replace the demo values, icon and labels with your own — or wire it to live data.
Widgets that show charts or live data also need their page script included. Copy the matching
<script>include from the bottom ofwidgets.html(Chart.js, FullCalendar andassets/js/pages/ui/widgets.js) along with the markup.
Was this page helpful?
