diff --git a/src/lib/components/breadcrumb/breadcrumb.component.ts b/src/lib/components/breadcrumb/breadcrumb.component.ts
new file mode 100644
index 00000000..740583cf
--- /dev/null
+++ b/src/lib/components/breadcrumb/breadcrumb.component.ts
@@ -0,0 +1,19 @@
+import { Component, Input } from '@angular/core';
+import { Breadcrumb } from 'primeng/breadcrumb';
+import { MenuItem } from 'primeng/api';
+
+@Component({
+ selector: 'breadcrumb',
+ standalone: true,
+ imports: [Breadcrumb],
+ template: `
+
+ `,
+})
+export class BreadcrumbComponent {
+ @Input() model: MenuItem[] = [];
+ @Input() home: MenuItem | undefined = undefined;
+}
diff --git a/src/prime-preset/tokens/components/breadcrumb.ts b/src/prime-preset/tokens/components/breadcrumb.ts
new file mode 100644
index 00000000..5c6fe006
--- /dev/null
+++ b/src/prime-preset/tokens/components/breadcrumb.ts
@@ -0,0 +1,24 @@
+export const breadcrumbCss = ({ dt }: { dt: (token: string) => string }): string => `
+ .p-breadcrumb-item-link {
+ padding: ${dt('breadcrumb.extend.extItem.padding')};
+ font-size: ${dt('fonts.fontSize.200')};
+ }
+
+ .p-breadcrumb-item-link:hover {
+ background: ${dt('breadcrumb.extend.hoverBackground')};
+ }
+
+ .p-breadcrumb-item-icon {
+ font-size: ${dt('breadcrumb.extend.iconSize')};
+ }
+
+ .p-breadcrumb-item:last-child .p-breadcrumb-item-link {
+ opacity: ${dt('opacity.500')};
+ pointer-events: none;
+ cursor: default;
+ }
+
+ .p-breadcrumb-item:last-child .p-breadcrumb-item-link:hover {
+ background: ${dt('transparent')};
+ }
+`;
diff --git a/src/stories/components/breadcrumb/breadcrumb.data.ts b/src/stories/components/breadcrumb/breadcrumb.data.ts
new file mode 100644
index 00000000..df815a46
--- /dev/null
+++ b/src/stories/components/breadcrumb/breadcrumb.data.ts
@@ -0,0 +1,15 @@
+import { MenuItem } from 'primeng/api';
+
+export const commonHome: MenuItem = { icon: 'ti ti-home', url: '#' };
+
+export const commonItems: MenuItem[] = [
+ { label: 'Электроника', icon: 'ti ti-device-laptop', url: '#' },
+ { label: 'Компьютеры', icon: 'ti ti-cpu', url: '#' },
+ { label: 'Ноутбуки' },
+];
+
+export const iconOnlyItems: MenuItem[] = [
+ { icon: 'ti ti-device-laptop', url: '#' },
+ { icon: 'ti ti-cpu', url: '#' },
+ { icon: 'ti ti-book' },
+];
diff --git a/src/stories/components/breadcrumb/breadcrumb.stories.ts b/src/stories/components/breadcrumb/breadcrumb.stories.ts
new file mode 100644
index 00000000..1f090d38
--- /dev/null
+++ b/src/stories/components/breadcrumb/breadcrumb.stories.ts
@@ -0,0 +1,75 @@
+import { Meta, StoryObj, moduleMetadata } from '@storybook/angular';
+import { BreadcrumbComponent } from '../../../lib/components/breadcrumb/breadcrumb.component';
+import { BreadcrumbBasicComponent, Basic } from './examples/breadcrumb-basic.component';
+import { BreadcrumbIconsOnlyComponent, IconsOnly } from './examples/breadcrumb-icons-only.component';
+import { commonHome, commonItems } from './breadcrumb.data';
+
+type BreadcrumbArgs = BreadcrumbComponent;
+
+const meta: Meta = {
+ title: 'Components/Menu/Breadcrumb',
+ component: BreadcrumbComponent,
+ tags: ['autodocs'],
+ decorators: [
+ moduleMetadata({
+ imports: [
+ BreadcrumbComponent,
+ BreadcrumbBasicComponent,
+ BreadcrumbIconsOnlyComponent,
+ ],
+ }),
+ ],
+ parameters: {
+ designTokens: { prefix: '--p-breadcrumb' },
+ docs: {
+ description: {
+ component: `Компонент навигации, показывающий путь к текущей странице.`,
+ },
+ },
+ },
+ argTypes: {
+ // ── Props ────────────────────────────────────────────────
+ model: {
+ control: 'object',
+ description: 'Массив элементов меню',
+ table: {
+ category: 'Props',
+ type: { summary: 'MenuItem[]' },
+ },
+ },
+ home: {
+ control: 'object',
+ description: 'Элемент для иконки «Домой»',
+ table: {
+ category: 'Props',
+ type: { summary: 'MenuItem' },
+ },
+ },
+ },
+ args: {
+ model: commonItems,
+ home: commonHome,
+ },
+};
+
+export default meta;
+type Story = StoryObj;
+
+// ── Default ──────────────────────────────────────────────────────────────────
+export const Default: Story = {
+ name: 'Default',
+ render: (args) => ({
+ props: args,
+ template: ``,
+ }),
+ parameters: {
+ docs: {
+ description: {
+ story: 'Базовый пример компонента.',
+ },
+ },
+ },
+};
+
+// ── Re-exports from example components ────────────────────────────────────
+export { Basic, IconsOnly };
diff --git a/src/stories/components/breadcrumb/examples/breadcrumb-basic.component.ts b/src/stories/components/breadcrumb/examples/breadcrumb-basic.component.ts
new file mode 100644
index 00000000..066086f0
--- /dev/null
+++ b/src/stories/components/breadcrumb/examples/breadcrumb-basic.component.ts
@@ -0,0 +1,56 @@
+import { Component } from '@angular/core';
+import { StoryObj } from '@storybook/angular';
+import { BreadcrumbComponent } from '../../../../lib/components/breadcrumb/breadcrumb.component';
+import { commonHome, commonItems } from '../breadcrumb.data';
+
+const template = `
+
+
+
+`;
+
+@Component({
+ selector: 'app-breadcrumb-basic',
+ standalone: true,
+ imports: [BreadcrumbComponent],
+ template,
+})
+export class BreadcrumbBasicComponent {
+ home = commonHome;
+ model = commonItems;
+}
+
+export const Basic: StoryObj = {
+ render: () => ({
+ template: ``,
+ }),
+ parameters: {
+ docs: {
+ description: { story: 'Хлебные крошки с текстом и иконками.' },
+ source: {
+ language: 'ts',
+ code: `
+import { Component } from '@angular/core';
+import { BreadcrumbComponent } from '@cdek-it/angular-ui-kit';
+
+@Component({
+ selector: 'app-breadcrumb-basic',
+ standalone: true,
+ imports: [BreadcrumbComponent],
+ template: \`
+
+ \`,
+})
+export class BreadcrumbBasicComponent {
+ home = { icon: 'ti ti-home', url: '#' };
+ model = [
+ { label: 'Электроника', icon: 'ti ti-device-laptop', url: '#' },
+ { label: 'Компьютеры', icon: 'ti ti-cpu', url: '#' },
+ { label: 'Ноутбуки' },
+ ];
+}
+ `,
+ },
+ },
+ },
+};
diff --git a/src/stories/components/breadcrumb/examples/breadcrumb-icons-only.component.ts b/src/stories/components/breadcrumb/examples/breadcrumb-icons-only.component.ts
new file mode 100644
index 00000000..2b97a6e2
--- /dev/null
+++ b/src/stories/components/breadcrumb/examples/breadcrumb-icons-only.component.ts
@@ -0,0 +1,56 @@
+import { Component } from '@angular/core';
+import { StoryObj } from '@storybook/angular';
+import { BreadcrumbComponent } from '../../../../lib/components/breadcrumb/breadcrumb.component';
+import { commonHome, iconOnlyItems } from '../breadcrumb.data';
+
+const template = `
+
+
+
+`;
+
+@Component({
+ selector: 'app-breadcrumb-icons-only',
+ standalone: true,
+ imports: [BreadcrumbComponent],
+ template,
+})
+export class BreadcrumbIconsOnlyComponent {
+ home = commonHome;
+ model = iconOnlyItems;
+}
+
+export const IconsOnly: StoryObj = {
+ render: () => ({
+ template: ``,
+ }),
+ parameters: {
+ docs: {
+ description: { story: 'Хлебные крошки только с иконками, без текста.' },
+ source: {
+ language: 'ts',
+ code: `
+import { Component } from '@angular/core';
+import { BreadcrumbComponent } from '@cdek-it/angular-ui-kit';
+
+@Component({
+ selector: 'app-breadcrumb-icons-only',
+ standalone: true,
+ imports: [BreadcrumbComponent],
+ template: \`
+
+ \`,
+})
+export class BreadcrumbIconsOnlyComponent {
+ home = { icon: 'ti ti-home', url: '#' };
+ model = [
+ { icon: 'ti ti-device-laptop', url: '#' },
+ { icon: 'ti ti-cpu', url: '#' },
+ { icon: 'ti ti-book' },
+ ];
+}
+ `,
+ },
+ },
+ },
+};