diff --git a/addons/rose/addon/components/rose/nav/breadcrumbs.js b/addons/rose/addon/components/rose/nav/breadcrumbs.js
new file mode 100644
index 000000000..0f915d890
--- /dev/null
+++ b/addons/rose/addon/components/rose/nav/breadcrumbs.js
@@ -0,0 +1,10 @@
+import Component from '@ember/component';
+import layout from '../../../templates/components/rose/nav/breadcrumbs';
+
+/**
+ * A navigation component with links.
+ */
+export default Component.extend({
+ layout,
+ tagName: '',
+});
diff --git a/addons/rose/addon/components/rose/nav/breadcrumbs.stories.mdx b/addons/rose/addon/components/rose/nav/breadcrumbs.stories.mdx
new file mode 100644
index 000000000..5d1d00f4c
--- /dev/null
+++ b/addons/rose/addon/components/rose/nav/breadcrumbs.stories.mdx
@@ -0,0 +1,27 @@
+import { Meta, Story, Preview } from '@storybook/addon-docs/blocks';
+import { hbs } from 'ember-cli-htmlbars';
+import { action } from '@storybook/addon-actions';
+
+
+
+# Breadcrumbs Navigation
+
+A breadcrumbs component with links as crumbs.
+
+```html
+
+ Level 1
+ Level 2
+
+```
+
+
+ {{
+ template: hbs`
+
+ Level 1
+ Level 2
+
+ `,
+ }}
+
diff --git a/addons/rose/addon/styles/rose/components/nav/_breadcrumbs.scss b/addons/rose/addon/styles/rose/components/nav/_breadcrumbs.scss
new file mode 100644
index 000000000..c07156279
--- /dev/null
+++ b/addons/rose/addon/styles/rose/components/nav/_breadcrumbs.scss
@@ -0,0 +1,32 @@
+@use '../../variables/sizing';
+@use '../../utilities/type';
+
+.rose-nav-breadcrumbs {
+ @include type.type(s, normal);
+ display: flex;
+ flex-wrap: wrap;
+
+ .rose-nav-breadcrumbs-link {
+ --color: var(--ui-gray);
+ color: var(--color);
+ text-decoration: none;
+ cursor: pointer;
+
+ &:hover {
+ --color: var(--action);
+
+ &::after {
+ color: var(--ui-gray);
+ }
+ }
+
+ &::after {
+ content: '\002F'; // "/"
+ margin: 0 sizing.rems(xs);
+ }
+
+ &:last-child::after {
+ content: '';
+ }
+ }
+}
diff --git a/addons/rose/addon/styles/rose/components/nav/_index.scss b/addons/rose/addon/styles/rose/components/nav/_index.scss
index 4a208cbee..a9d88d3cc 100644
--- a/addons/rose/addon/styles/rose/components/nav/_index.scss
+++ b/addons/rose/addon/styles/rose/components/nav/_index.scss
@@ -1,2 +1,3 @@
@import 'sidebar';
@import 'tabs';
+@import 'breadcrumbs';
diff --git a/addons/rose/addon/templates/components/rose/nav/breadcrumbs.hbs b/addons/rose/addon/templates/components/rose/nav/breadcrumbs.hbs
new file mode 100644
index 000000000..287e2cba3
--- /dev/null
+++ b/addons/rose/addon/templates/components/rose/nav/breadcrumbs.hbs
@@ -0,0 +1,5 @@
+
diff --git a/addons/rose/app/components/rose/nav/breadcrumbs.js b/addons/rose/app/components/rose/nav/breadcrumbs.js
new file mode 100644
index 000000000..bd57614dc
--- /dev/null
+++ b/addons/rose/app/components/rose/nav/breadcrumbs.js
@@ -0,0 +1 @@
+export { default } from 'rose/components/rose/nav/breadcrumbs';
diff --git a/addons/rose/tests/dummy/app/templates/index.hbs b/addons/rose/tests/dummy/app/templates/index.hbs
index 3554ea5f2..bb8ae24db 100644
--- a/addons/rose/tests/dummy/app/templates/index.hbs
+++ b/addons/rose/tests/dummy/app/templates/index.hbs
@@ -1,23 +1,7 @@
-
-
-
- Address
- Host Set
- Name
- Description
-
-
-
-
- 1.1.1.1
- host-set-1, host-set-2
- optional name
- description
-
-
-
-
- Footer
-
-
-
+
+ Level 1
+ Level 2
+ Level 3
+ Level 4
+ Level 5
+
diff --git a/addons/rose/tests/dummy/app/templates/playground.hbs b/addons/rose/tests/dummy/app/templates/playground.hbs
index 576a37395..d12d03f09 100644
--- a/addons/rose/tests/dummy/app/templates/playground.hbs
+++ b/addons/rose/tests/dummy/app/templates/playground.hbs
@@ -205,5 +205,29 @@
+
+
+
+
+ Address
+ Host Set
+ Name
+ Description
+
+
+
+
+ 1.1.1.1
+ host-set-1, host-set-2
+ optional name
+ description
+
+
+
+
+ Footer
+
+
+
diff --git a/addons/rose/tests/integration/components/rose/nav/breadcrumbs-test.js b/addons/rose/tests/integration/components/rose/nav/breadcrumbs-test.js
new file mode 100644
index 000000000..1d8204eb4
--- /dev/null
+++ b/addons/rose/tests/integration/components/rose/nav/breadcrumbs-test.js
@@ -0,0 +1,26 @@
+import { module, test } from 'qunit';
+import { setupRenderingTest } from 'ember-qunit';
+import { render, find, findAll } from '@ember/test-helpers';
+import hbs from 'htmlbars-inline-precompile';
+
+module('Integration | Component | rose/nav/breadcrumbs', function (hooks) {
+ setupRenderingTest(hooks);
+
+ test('it renders', async function (assert) {
+ await render(hbs``);
+ assert.ok(find('.rose-nav-breadcrumbs'));
+ });
+
+ test('it renders with attributes', async function (assert) {
+ await render(hbs``);
+ assert.ok(find('#breadcrumbs'));
+ });
+
+ test('it renders with breadcrumb links', async function (assert) {
+ await render(hbs`
+
+
+ `);
+ assert.equal(findAll('.rose-nav-breadcrumbs-link').length, 2);
+ });
+});