diff --git a/frontend/src/components/basics/NumberedListItem.tsx b/frontend/src/components/basics/NumberedListItem.tsx
new file mode 100644
index 0000000..1aad1f1
--- /dev/null
+++ b/frontend/src/components/basics/NumberedListItem.tsx
@@ -0,0 +1,23 @@
+type NumberedListItemProps = {
+ /** Number to be displayed in front of text */
+ elementNumber: number;
+ /** List item text */
+ text: string;
+}
+
+/**
+ * Numbered list item - the number is displayed in a circle in front of the text
+ * @param elementNumber Number to be displayed
+ * @param text Text to be displayed
+ */
+export function NumberedListItem({elementNumber, text}: NumberedListItemProps) {
+ return
+ {/* Step number circle */}
+
+ {elementNumber}
+
+
+ {/* Step text */}
+ {text}
+ ;
+}
\ No newline at end of file
diff --git a/frontend/src/components/recipes/RecipeDetailPage.tsx b/frontend/src/components/recipes/RecipeDetailPage.tsx
index 29fa081..c856c9b 100644
--- a/frontend/src/components/recipes/RecipeDetailPage.tsx
+++ b/frontend/src/components/recipes/RecipeDetailPage.tsx
@@ -6,6 +6,7 @@ import {getRecipeEditUrl, getRecipeListUrl} from "../../routes"
import ButtonLink from "../basics/ButtonLink"
import {mapRecipeDtoToModel} from "../../mappers/RecipeMapper"
import {NumberStepControl} from "../basics/NumberStepControl.tsx";
+import {NumberedListItem} from "../basics/NumberedListItem.tsx";
/**
@@ -131,15 +132,7 @@ export default function RecipeDetailPage() {
{/* Instructions - @todo add reasonable list delegate component*/}
{recipe.instructionStepList.map((step, j) => (
- -
- {/* Step number circle */}
-
- {j + 1}
-
-
- {/* Step text */}
- {step.text}
-
+
))}