diff --git a/TP Blazor/Components/Card.razor b/TP Blazor/Components/Card.razor
new file mode 100644
index 0000000..0e986ef
--- /dev/null
+++ b/TP Blazor/Components/Card.razor
@@ -0,0 +1,9 @@
+
Card
+
+@using TP_Blazor.Models
+@typeparam TItem
+
+ @CardHeader(Item)
+ @CardBody(Item)
+ @CardFooter
+
\ No newline at end of file
diff --git a/TP Blazor/Components/Card.razor.cs b/TP Blazor/Components/Card.razor.cs
new file mode 100644
index 0000000..951fab1
--- /dev/null
+++ b/TP Blazor/Components/Card.razor.cs
@@ -0,0 +1,18 @@
+using Microsoft.AspNetCore.Components;
+
+namespace TP_Blazor.Components;
+
+public partial class Card
+{
+ [Parameter]
+ public RenderFragment CardBody { get; set; }
+
+ [Parameter]
+ public RenderFragment CardFooter { get; set; }
+
+ [Parameter]
+ public RenderFragment CardHeader { get; set; }
+
+ [Parameter]
+ public TItem Item { get; set; }
+}
\ No newline at end of file
diff --git a/TP Blazor/Models/Cake.cs b/TP Blazor/Models/Cake.cs
new file mode 100644
index 0000000..45a7e33
--- /dev/null
+++ b/TP Blazor/Models/Cake.cs
@@ -0,0 +1,8 @@
+namespace TP_Blazor.Models;
+
+public class Cake
+{
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public decimal Cost { get; set; }
+}
\ No newline at end of file
diff --git a/TP Blazor/Pages/Index.razor.cs b/TP Blazor/Pages/Index.razor.cs
new file mode 100644
index 0000000..77053dc
--- /dev/null
+++ b/TP Blazor/Pages/Index.razor.cs
@@ -0,0 +1,13 @@
+using TP_Blazor.Models;
+
+namespace TP_Blazor.Pages;
+
+public partial class Index
+{
+ private Cake CakeItem = new Cake
+ {
+ Id = 1,
+ Name = "Black Forest",
+ Cost = 50
+ };
+}
\ No newline at end of file