List groups display a series of items: plain lists, menus of links, option pickers, inboxes and settings screens. Make items actionable, colour or number them, lay them out horizontally, or switch content panes with data-ui-toggle="list".
1Basic list
An unordered list with .list-group and .list-group-item.
- Recovery spa
- Nutrition plans
- Group classes
- Personal training
<ul class="list-group" style="max-width: 360px;">
<li class="list-group-item">Recovery spa</li>
<li class="list-group-item">Nutrition plans</li>
<li class="list-group-item">Group classes</li>
<li class="list-group-item">Personal training</li>
</ul>2Active and disabled
Highlight the current item and dim unavailable ones.
- Current plan
- Upgrade options
- Enterprise (contact sales)
- Billing history
<ul class="list-group" style="max-width: 360px;">
<li class="list-group-item active" aria-current="true">Current plan</li>
<li class="list-group-item">Upgrade options</li>
<li class="list-group-item disabled" aria-disabled="true">Enterprise (contact sales)</li>
<li class="list-group-item">Billing history</li>
</ul>3Links and buttons
list-group-item-action adds hover and focus states to links and buttons.
<div class="list-group" style="max-width: 360px;">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">Overview</a><a href="#" class="list-group-item list-group-item-action">Members</a>
<button type="button" class="list-group-item list-group-item-action">Integrations</button>
<button type="button" class="list-group-item list-group-item-action" disabled>Audit log</button>
</div>4Flush list
list-group-flush removes outer borders so the list sits flush in a parent.
- Progress tracking
- Community events
- Flexible plans
<ul class="list-group list-group-flush border-top border-bottom">
<li class="list-group-item">Progress tracking</li>
<li class="list-group-item">Community events</li>
<li class="list-group-item">Flexible plans</li>
</ul>5Numbered list
list-group-numbered on an ol adds counters, here with extra content per item.
- 24Looking back at a busy seasonNov 25, 2025
- 24How our coaches plan a new classMay 31, 2026
- 12What to eat before a morning workoutSep 27, 2025
<ol class="list-group list-group-numbered" style="max-width: 420px;">
<li class="list-group-item d-flex justify-content-between align-items-start"><div class="ms-2 me-auto"><div class="fw-semibold">Looking back at a busy season</div><span class="small text-body-secondary">Nov 25, 2025</span></div><span class="badge text-bg-primary rounded-pill">24</span></li>
<li class="list-group-item d-flex justify-content-between align-items-start"><div class="ms-2 me-auto"><div class="fw-semibold">How our coaches plan a new class</div><span class="small text-body-secondary">May 31, 2026</span></div><span class="badge text-bg-primary rounded-pill">24</span></li>
<li class="list-group-item d-flex justify-content-between align-items-start"><div class="ms-2 me-auto"><div class="fw-semibold">What to eat before a morning workout</div><span class="small text-body-secondary">Sep 27, 2025</span></div><span class="badge text-bg-primary rounded-pill">12</span></li>
</ol>6Horizontal list
list-group-horizontal lays items in a row; -md makes it responsive.
- 59.7kVisitors
- 318Sign-ups
- 44%Conversion
<ul class="list-group list-group-horizontal-md">
<li class="list-group-item flex-fill text-center"><div class="fw-bold">59.7k</div><small class="text-body-secondary">Visitors</small></li>
<li class="list-group-item flex-fill text-center"><div class="fw-bold">318</div><small class="text-body-secondary">Sign-ups</small></li>
<li class="list-group-item flex-fill text-center"><div class="fw-bold">44%</div><small class="text-body-secondary">Conversion</small></li>
</ul>7Contextual colours
list-group-item-* colours individual items.
<div class="list-group" style="max-width: 360px;">
<a href="#" class="list-group-item list-group-item-action list-group-item-primary">Primary item</a><a href="#" class="list-group-item list-group-item-action list-group-item-secondary">Secondary item</a><a href="#" class="list-group-item list-group-item-action list-group-item-success">Success item</a><a href="#" class="list-group-item list-group-item-action list-group-item-danger">Danger item</a><a href="#" class="list-group-item list-group-item-action list-group-item-warning">Warning item</a><a href="#" class="list-group-item list-group-item-action list-group-item-info">Info item</a><a href="#" class="list-group-item list-group-item-action list-group-item-light">Light item</a><a href="#" class="list-group-item list-group-item-action list-group-item-dark">Dark item</a>
</div>8With badges
Pill badges at the end of each item show counts.
- Projects5
- Tasks34
- Issues1
<ul class="list-group" style="max-width: 360px;">
<li class="list-group-item d-flex justify-content-between align-items-center"><span><i class="bi bi-folder" aria-hidden="true"></i> Projects</span><span class="badge text-bg-primary rounded-pill">5</span></li>
<li class="list-group-item d-flex justify-content-between align-items-center"><span><i class="bi bi-check2-square" aria-hidden="true"></i> Tasks</span><span class="badge text-bg-success rounded-pill">34</span></li>
<li class="list-group-item d-flex justify-content-between align-items-center"><span><i class="bi bi-exclamation-circle" aria-hidden="true"></i> Issues</span><span class="badge text-bg-danger rounded-pill">1</span></li>
</ul>9Custom content
Headings, text and meta inside each item, like a list of articles.
Five things we learned this year
48 min agoEvery detail is handled by people who care about getting it right.
Kenji SatoFive stretches for desk workers
yesterdayFriendly people answer your questions quickly, by phone, chat or email.
Ruby RossiA beginner's guide to strength training
6 days agoWe keep things simple, so you can focus on what matters to you.
Ella Harlow<div class="list-group" style="max-width: 520px;">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">
<div class="d-flex w-100 justify-content-between">
<h6 class="mb-1">Five things we learned this year</h6>
<small>48 min ago</small>
</div>
<p class="mb-1 small">Every detail is handled by people who care about getting it right.</p>
<small class="">Kenji Sato</small></a><a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h6 class="mb-1">Five stretches for desk workers</h6>
<small>yesterday</small>
</div>
<p class="mb-1 small">Friendly people answer your questions quickly, by phone, chat or email.</p>
<small class="text-body-secondary">Ruby Rossi</small></a><a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h6 class="mb-1">A beginner's guide to strength training</h6>
<small>6 days ago</small>
</div>
<p class="mb-1 small">We keep things simple, so you can focus on what matters to you.</p>
<small class="text-body-secondary">Ella Harlow</small></a>
</div>10Checkbox list
Checkboxes and labels in items make a simple to-do list.
<ul class="list-group" style="max-width: 360px;">
<li class="list-group-item"><input class="form-check-input me-2" type="checkbox" id="lg-chk-982" checked><label class="form-check-label text-decoration-line-through text-body-secondary" for="lg-chk-982">Calm experience bright</label></li>
<li class="list-group-item"><input class="form-check-input me-2" type="checkbox" id="lg-chk-983" checked><label class="form-check-label text-decoration-line-through text-body-secondary" for="lg-chk-983">Reliable community practical</label></li>
<li class="list-group-item"><input class="form-check-input me-2" type="checkbox" id="lg-chk-984"><label class="form-check-label" for="lg-chk-984">Focused experience elegant</label></li>
<li class="list-group-item"><input class="form-check-input me-2" type="checkbox" id="lg-chk-985"><label class="form-check-label" for="lg-chk-985">Honest plan honest</label></li>
</ul>11Radio option list
Whole list items as labels for radio buttons, e.g. a plan picker.
<div class="list-group" style="max-width: 420px;">
<label class="list-group-item d-flex gap-3" for="lg-radio-opt-987"><input class="form-check-input flex-shrink-0" type="radio" name="lg-radio-986" id="lg-radio-opt-987"><span><span class="d-block fw-semibold">Starter</span><small class="text-body-secondary">$9 / month</small></span></label>
<label class="list-group-item d-flex gap-3" for="lg-radio-opt-988"><input class="form-check-input flex-shrink-0" type="radio" name="lg-radio-986" id="lg-radio-opt-988" checked><span><span class="d-block fw-semibold">Team</span><small class="text-body-secondary">$29 / month</small></span></label>
<label class="list-group-item d-flex gap-3" for="lg-radio-opt-989"><input class="form-check-input flex-shrink-0" type="radio" name="lg-radio-986" id="lg-radio-opt-989"><span><span class="d-block fw-semibold">Business</span><small class="text-body-secondary">$79 / month</small></span></label>
</div>12List as tabs
data-ui-toggle="list" turns the list into tab navigation for panes next to it.
Certified coaches design every session around your level and your goals.
Two-step verification is on.
We measure success by how many members come back and tell their friends.
<div class="row g-3">
<div class="col-sm-4">
<div class="list-group" role="tablist">
<a class="list-group-item list-group-item-action active" id="lg-tab-990-tab" data-ui-toggle="list" href="#lg-tab-990" role="tab" aria-controls="lg-tab-990" aria-selected="true">Profile</a><a class="list-group-item list-group-item-action" id="lg-tab-991-tab" data-ui-toggle="list" href="#lg-tab-991" role="tab" aria-controls="lg-tab-991" aria-selected="false">Security</a><a class="list-group-item list-group-item-action" id="lg-tab-992-tab" data-ui-toggle="list" href="#lg-tab-992" role="tab" aria-controls="lg-tab-992" aria-selected="false">Notifications</a>
</div>
</div>
<div class="col-sm-8">
<div class="tab-content border rounded p-3 h-100">
<div class="tab-pane fade show active" id="lg-tab-990" role="tabpanel" aria-labelledby="lg-tab-990-tab">
<p class="mb-0">Certified coaches design every session around your level and your goals.</p>
</div>
<div class="tab-pane fade" id="lg-tab-991" role="tabpanel" aria-labelledby="lg-tab-991-tab">
<p class="mb-0"><i class="bi bi-shield-lock" aria-hidden="true"></i> Two-step verification is on.</p>
</div>
<div class="tab-pane fade" id="lg-tab-992" role="tabpanel" aria-labelledby="lg-tab-992-tab">
<p class="mb-0">We measure success by how many members come back and tell their friends.</p>
</div>
</div>
</div>
</div>13Notification list
Avatars, message and time, with a dot for unread items.
<div class="list-group" style="max-width: 440px;">
<a href="#" class="list-group-item list-group-item-action d-flex gap-3 py-3"><img src="../assets/img/avatar-5.svg" alt="Nadia Varga" class="rounded-circle flex-shrink-0" width="40" height="40">
<div class="flex-grow-1">
<div class="d-flex justify-content-between">
<strong class="small">Nadia Varga</strong><small class="text-body-secondary text-nowrap ms-2">yesterday</small>
</div>
<div class="small text-body-secondary">
We listen first, then build a plan around what you actually need.
</div>
</div>
<span class="p-1 bg-primary rounded-circle align-self-center"><span class="visually-hidden">Unread</span></span></a><a href="#" class="list-group-item list-group-item-action d-flex gap-3 py-3"><img src="../assets/img/avatar-10.svg" alt="Ravi Lindqvist" class="rounded-circle flex-shrink-0" width="40" height="40">
<div class="flex-grow-1">
<div class="d-flex justify-content-between">
<strong class="small">Ravi Lindqvist</strong><small class="text-body-secondary text-nowrap ms-2">just now</small>
</div>
<div class="small text-body-secondary">
We keep things simple, so you can focus on what matters to you.
</div>
</div>
</a><a href="#" class="list-group-item list-group-item-action d-flex gap-3 py-3"><img src="../assets/img/avatar-3.svg" alt="Hana Ashford" class="rounded-circle flex-shrink-0" width="40" height="40">
<div class="flex-grow-1">
<div class="d-flex justify-content-between">
<strong class="small">Hana Ashford</strong><small class="text-body-secondary text-nowrap ms-2">6 days ago</small>
</div>
<div class="small text-body-secondary">
Small group classes mean your coach knows your name and your form.
</div>
</div>
</a>
</div>14File list
File type icons, sizes and a download button per file.
- running-your-first-5k-an-eight-week-plan.pdf99 KB · Dec 31, 2025
- what-our-members-asked-us-most.png510 KB · Feb 7, 2026
- how-to-choose-the-right-class.xlsx671 KB · May 21, 2026
- looking-back-at-a-busy-season.zip261 KB · Sep 28, 2026
<ul class="list-group" style="max-width: 480px;">
<li class="list-group-item d-flex align-items-center gap-3"><span class="fs-4 text-danger"><i class="bi bi-file-earmark-pdf" aria-hidden="true"></i></span><div class="flex-grow-1 text-truncate"><div class="small fw-semibold text-truncate">running-your-first-5k-an-eight-week-plan.pdf</div><div class="small text-body-secondary">99 KB · Dec 31, 2025</div></div><button type="button" class="btn btn-sm btn-light border" aria-label="Download"><i class="bi bi-download" aria-hidden="true"></i></button></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="fs-4 text-success"><i class="bi bi-file-earmark-image" aria-hidden="true"></i></span><div class="flex-grow-1 text-truncate"><div class="small fw-semibold text-truncate">what-our-members-asked-us-most.png</div><div class="small text-body-secondary">510 KB · Feb 7, 2026</div></div><button type="button" class="btn btn-sm btn-light border" aria-label="Download"><i class="bi bi-download" aria-hidden="true"></i></button></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="fs-4 text-primary"><i class="bi bi-file-earmark-spreadsheet" aria-hidden="true"></i></span><div class="flex-grow-1 text-truncate"><div class="small fw-semibold text-truncate">how-to-choose-the-right-class.xlsx</div><div class="small text-body-secondary">671 KB · May 21, 2026</div></div><button type="button" class="btn btn-sm btn-light border" aria-label="Download"><i class="bi bi-download" aria-hidden="true"></i></button></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="fs-4 text-warning"><i class="bi bi-file-earmark-zip" aria-hidden="true"></i></span><div class="flex-grow-1 text-truncate"><div class="small fw-semibold text-truncate">looking-back-at-a-busy-season.zip</div><div class="small text-body-secondary">261 KB · Sep 28, 2026</div></div><button type="button" class="btn btn-sm btn-light border" aria-label="Download"><i class="bi bi-download" aria-hidden="true"></i></button></li>
</ul>15Contact list
People with role and quick call and email actions.
- Owen LarsenSales Executive
- Ivy TanakaBackend Engineer
- Arjun BrennanProject Manager
<ul class="list-group" style="max-width: 480px;">
<li class="list-group-item d-flex align-items-center gap-3"><img src="../assets/img/avatar-11.svg" alt="Owen Larsen" class="rounded-circle flex-shrink-0" width="40" height="40"><div class="flex-grow-1"><div class="fw-semibold small">Owen Larsen</div><div class="small text-body-secondary">Sales Executive</div></div><div class="btn-group btn-group-sm" role="group" aria-label="Contact Owen"><button type="button" class="btn btn-outline-secondary" aria-label="Call"><i class="bi bi-telephone" aria-hidden="true"></i></button><button type="button" class="btn btn-outline-secondary" aria-label="Email"><i class="bi bi-envelope" aria-hidden="true"></i></button></div></li>
<li class="list-group-item d-flex align-items-center gap-3"><img src="../assets/img/avatar-12.svg" alt="Ivy Tanaka" class="rounded-circle flex-shrink-0" width="40" height="40"><div class="flex-grow-1"><div class="fw-semibold small">Ivy Tanaka</div><div class="small text-body-secondary">Backend Engineer</div></div><div class="btn-group btn-group-sm" role="group" aria-label="Contact Ivy"><button type="button" class="btn btn-outline-secondary" aria-label="Call"><i class="bi bi-telephone" aria-hidden="true"></i></button><button type="button" class="btn btn-outline-secondary" aria-label="Email"><i class="bi bi-envelope" aria-hidden="true"></i></button></div></li>
<li class="list-group-item d-flex align-items-center gap-3"><img src="../assets/img/avatar-10.svg" alt="Arjun Brennan" class="rounded-circle flex-shrink-0" width="40" height="40"><div class="flex-grow-1"><div class="fw-semibold small">Arjun Brennan</div><div class="small text-body-secondary">Project Manager</div></div><div class="btn-group btn-group-sm" role="group" aria-label="Contact Arjun"><button type="button" class="btn btn-outline-secondary" aria-label="Call"><i class="bi bi-telephone" aria-hidden="true"></i></button><button type="button" class="btn btn-outline-secondary" aria-label="Email"><i class="bi bi-envelope" aria-hidden="true"></i></button></div></li>
</ul>16Settings with switches
Each setting has an icon, a description and a switch on the right.
<ul class="list-group" style="max-width: 480px;">
<li class="list-group-item d-flex align-items-center gap-3 py-3"><span class="fs-5 text-primary"><i class="bi bi-bell" aria-hidden="true"></i></span><label class="flex-grow-1" for="lg-switch-993"><span class="d-block fw-semibold small">Push notifications</span><span class="small text-body-secondary">Get alerts on your phone</span></label><div class="form-check form-switch m-0"><input class="form-check-input" type="checkbox" role="switch" id="lg-switch-993" checked></div></li>
<li class="list-group-item d-flex align-items-center gap-3 py-3"><span class="fs-5 text-primary"><i class="bi bi-envelope" aria-hidden="true"></i></span><label class="flex-grow-1" for="lg-switch-994"><span class="d-block fw-semibold small">Weekly digest</span><span class="small text-body-secondary">A summary every Monday</span></label><div class="form-check form-switch m-0"><input class="form-check-input" type="checkbox" role="switch" id="lg-switch-994" checked></div></li>
<li class="list-group-item d-flex align-items-center gap-3 py-3"><span class="fs-5 text-primary"><i class="bi bi-moon" aria-hidden="true"></i></span><label class="flex-grow-1" for="lg-switch-995"><span class="d-block fw-semibold small">Dark mode</span><span class="small text-body-secondary">Easier on the eyes at night</span></label><div class="form-check form-switch m-0"><input class="form-check-input" type="checkbox" role="switch" id="lg-switch-995"></div></li>
</ul>17Task progress list
Progress bars inside items track several jobs at once.
- Focused process100%
- Flexible release28%
- Secure routine36%
<ul class="list-group" style="max-width: 480px;">
<li class="list-group-item"><div class="d-flex justify-content-between small mb-1"><span class="fw-semibold">Focused process</span><span class="text-body-secondary">100%</span></div><div class="progress" role="progressbar" aria-label="Task progress" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100" style="height: 6px;"><div class="progress-bar bg-success" style="width: 100%;"></div></div></li>
<li class="list-group-item"><div class="d-flex justify-content-between small mb-1"><span class="fw-semibold">Flexible release</span><span class="text-body-secondary">28%</span></div><div class="progress" role="progressbar" aria-label="Task progress" aria-valuenow="28" aria-valuemin="0" aria-valuemax="100" style="height: 6px;"><div class="progress-bar bg-warning" style="width: 28%;"></div></div></li>
<li class="list-group-item"><div class="d-flex justify-content-between small mb-1"><span class="fw-semibold">Secure routine</span><span class="text-body-secondary">36%</span></div><div class="progress" role="progressbar" aria-label="Task progress" aria-valuenow="36" aria-valuemin="0" aria-valuemax="100" style="height: 6px;"><div class="progress-bar bg-warning" style="width: 36%;"></div></div></li>
</ul>18Inbox list
Unread messages in bold with a tinted edge; long lines are truncated.
<div class="list-group" style="max-width: 560px;">
<a href="#" class="list-group-item list-group-item-action d-flex gap-3 align-items-start ca-unread"><span class="pt-1 text-warning"><i class="bi bi-star-fill" aria-hidden="true"></i></span>
<div class="flex-grow-1 text-truncate">
<div class="d-flex justify-content-between">
<span class="fw-bold">Felix Kim</span><small class="text-body-secondary ms-2 text-nowrap">09:00</small>
</div>
<div class="small text-truncate fw-semibold">
Building a workout habit that lasts
</div>
<div class="small text-body-secondary text-truncate">
Pause or change your membership any time, with no long contracts.
</div>
</div>
</a><a href="#" class="list-group-item list-group-item-action d-flex gap-3 align-items-start ca-unread"><span class="pt-1 text-warning"><i class="bi bi-star" aria-hidden="true"></i></span>
<div class="flex-grow-1 text-truncate">
<div class="d-flex justify-content-between">
<span class="fw-bold">Leo Alvarez</span><small class="text-body-secondary ms-2 text-nowrap">08:00</small>
</div>
<div class="small text-truncate fw-semibold">
How our coaches plan a new class
</div>
<div class="small text-body-secondary text-truncate">
Our recovery spa has a sauna, cold plunge and massage rooms.
</div>
</div>
</a><a href="#" class="list-group-item list-group-item-action d-flex gap-3 align-items-start"><span class="pt-1 text-warning"><i class="bi bi-star" aria-hidden="true"></i></span>
<div class="flex-grow-1 text-truncate">
<div class="d-flex justify-content-between">
<span class="">Liam Fischer</span><small class="text-body-secondary ms-2 text-nowrap">14:15</small>
</div>
<div class="small text-truncate text-body-secondary">
Our most popular classes this month
</div>
<div class="small text-body-secondary text-truncate">
Our team has done this many times, so you never have to guess.
</div>
</div>
</a><a href="#" class="list-group-item list-group-item-action d-flex gap-3 align-items-start"><span class="pt-1 text-warning"><i class="bi bi-star" aria-hidden="true"></i></span>
<div class="flex-grow-1 text-truncate">
<div class="d-flex justify-content-between">
<span class="">Priya Ortega</span><small class="text-body-secondary ms-2 text-nowrap">07:15</small>
</div>
<div class="small text-truncate text-body-secondary">
A beginner's guide to getting started
</div>
<div class="small text-body-secondary text-truncate">
Nutrition plans fit your routine and the food you actually enjoy.
</div>
</div>
</a>
</div>19Leaderboard
Ranked people with medal badges, avatars and scores.
- 1
Tariq Kowalski1128 pts
- 2
Omar Whitaker666 pts
- 3
Elena Novak452 pts
- 4
Kai Delgado252 pts
<ol class="list-group" style="max-width: 420px;">
<li class="list-group-item d-flex align-items-center gap-3"><span class="badge rounded-circle text-bg-warning ca-rank">1</span><img src="../assets/img/avatar-12.svg" alt="Tariq Kowalski" class="rounded-circle flex-shrink-0" width="36" height="36"><span class="flex-grow-1 small fw-semibold">Tariq Kowalski</span><span class="small">1128 pts</span></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="badge rounded-circle text-bg-secondary ca-rank">2</span><img src="../assets/img/avatar-6.svg" alt="Omar Whitaker" class="rounded-circle flex-shrink-0" width="36" height="36"><span class="flex-grow-1 small fw-semibold">Omar Whitaker</span><span class="small">666 pts</span></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="badge rounded-circle text-bg-danger ca-rank">3</span><img src="../assets/img/avatar-8.svg" alt="Elena Novak" class="rounded-circle flex-shrink-0" width="36" height="36"><span class="flex-grow-1 small fw-semibold">Elena Novak</span><span class="small">452 pts</span></li>
<li class="list-group-item d-flex align-items-center gap-3"><span class="badge rounded-circle text-bg-light ca-rank">4</span><img src="../assets/img/avatar-10.svg" alt="Kai Delgado" class="rounded-circle flex-shrink-0" width="36" height="36"><span class="flex-grow-1 small fw-semibold">Kai Delgado</span><span class="small">252 pts</span></li>
</ol>20Reorderable list look
Grip handles signal that items can be reordered (wire up drag and drop in your app).
- Open 24/71
- Flexible plans2
- Progress tracking3
- Community events4
<ul class="list-group" style="max-width: 420px;">
<li class="list-group-item d-flex align-items-center gap-2"><span class="text-body-tertiary ca-grip" title="Drag to reorder"><i class="bi bi-grip-vertical" aria-hidden="true"></i></span><span class="flex-grow-1">Open 24/7</span><span class="badge bg-body-secondary text-body-secondary">1</span></li>
<li class="list-group-item d-flex align-items-center gap-2"><span class="text-body-tertiary ca-grip" title="Drag to reorder"><i class="bi bi-grip-vertical" aria-hidden="true"></i></span><span class="flex-grow-1">Flexible plans</span><span class="badge bg-body-secondary text-body-secondary">2</span></li>
<li class="list-group-item d-flex align-items-center gap-2"><span class="text-body-tertiary ca-grip" title="Drag to reorder"><i class="bi bi-grip-vertical" aria-hidden="true"></i></span><span class="flex-grow-1">Progress tracking</span><span class="badge bg-body-secondary text-body-secondary">3</span></li>
<li class="list-group-item d-flex align-items-center gap-2"><span class="text-body-tertiary ca-grip" title="Drag to reorder"><i class="bi bi-grip-vertical" aria-hidden="true"></i></span><span class="flex-grow-1">Community events</span><span class="badge bg-body-secondary text-body-secondary">4</span></li>
</ul>