diff --git a/_data/design-patterns.json b/_data/design-patterns.json
index 7bb16d6a74..640dd4e0d0 100644
--- a/_data/design-patterns.json
+++ b/_data/design-patterns.json
@@ -113,4 +113,4 @@
}
]
}
-]
+]
\ No newline at end of file
diff --git a/_includes/design-patterns/gc-intro/gc-intro-image.html b/_includes/design-patterns/gc-intro/gc-intro-image.html
new file mode 100644
index 0000000000..2fddb5f8e6
--- /dev/null
+++ b/_includes/design-patterns/gc-intro/gc-intro-image.html
@@ -0,0 +1,11 @@
+
diff --git a/_includes/design-patterns/gc-intro/gc-intro.html b/_includes/design-patterns/gc-intro/gc-intro.html
new file mode 100644
index 0000000000..40434a06ea
--- /dev/null
+++ b/_includes/design-patterns/gc-intro/gc-intro.html
@@ -0,0 +1,3 @@
+{{ page.title }}
+{% if page.language == "en" %}The introduction block pattern introduces the content of a landing page.{% else %}La configuration de conception du bloc d'introduction introduit le contenu d'une page de destination.{% endif %}
+{% if page.language == "en" %}Supertask button{% else %}Bouton de super-tâche{% endif %}
diff --git a/design-patterns/gc-intro/gc-intro-doc-en.html b/design-patterns/gc-intro/gc-intro-doc-en.html
new file mode 100644
index 0000000000..e857f19897
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-doc-en.html
@@ -0,0 +1,9 @@
+---
+title: Introduction block
+description: Documentation for the introduction block design pattern.
+language: en
+altLangPage: gc-intro-doc-fr.html
+dateModified: 2024-03-14
+layout: documentation_pattern
+index_json: index.json-ld
+---
diff --git a/design-patterns/gc-intro/gc-intro-doc-fr.html b/design-patterns/gc-intro/gc-intro-doc-fr.html
new file mode 100644
index 0000000000..0af014ea83
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-doc-fr.html
@@ -0,0 +1,9 @@
+---
+title: Bloc d’introduction
+description: Documentation de la configuration de conception du bloc d’introduction.
+language: fr
+altLangPage: gc-intro-doc-en.html
+dateModified: 2024-03-14
+layout: documentation_pattern
+index_json: index.json-ld
+---
diff --git a/design-patterns/gc-intro/gc-intro-en.html b/design-patterns/gc-intro/gc-intro-en.html
new file mode 100644
index 0000000000..91aefb69bc
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-en.html
@@ -0,0 +1,20 @@
+---
+{
+ "title": "Introduction block",
+ "language": "en",
+ "altLangPage": "gc-intro-fr.html",
+ "dateModified": "2024-03-14",
+ "breadcrumbs": [
+ { "title": "Introduction block - documentation", "link": "design-patterns/gc-intro/gc-intro-doc-en.html" }
+ ],
+ "layout": "without-h1",
+}
+---
+
+
+
+ {% include_relative samples/gc-intro.html %}
+
+
Code sample
+ {% highlight html %}{% include_relative samples/gc-intro.html %}{% endhighlight %}
+
diff --git a/design-patterns/gc-intro/gc-intro-fr.html b/design-patterns/gc-intro/gc-intro-fr.html
new file mode 100644
index 0000000000..d8b784a768
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-fr.html
@@ -0,0 +1,20 @@
+---
+{
+ "title": "Bloc d'introduction",
+ "language": "fr",
+ "altLangPage": "gc-intro-en.html",
+ "dateModified": "2024-03-14",
+ "breadcrumbs": [
+ { "title": "Bloc d'introduction - documentation", "link": "design-patterns/gc-intro/gc-intro-doc-fr.html" }
+ ],
+ "layout": "without-h1",
+}
+---
+
+
+
+ {% include_relative samples/gc-intro.html %}
+
+
Code
+ {% highlight html %}{% include_relative samples/gc-intro.html %}{% endhighlight %}
+
diff --git a/design-patterns/gc-intro/gc-intro-image-en.html b/design-patterns/gc-intro/gc-intro-image-en.html
new file mode 100644
index 0000000000..9340af1070
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-image-en.html
@@ -0,0 +1,20 @@
+---
+{
+ "title": "Introduction block with image",
+ "language": "en",
+ "altLangPage": "gc-intro-image-fr.html",
+ "dateModified": "2024-03-14",
+ "breadcrumbs": [
+ { "title": "Introduction block - documentation", "link": "design-patterns/gc-intro/gc-intro-doc-en.html" }
+ ],
+ "layout": "no-container"
+}
+---
+
+
+{% include_relative samples/gc-intro-image.html %}
+
+
+
Code sample
+ {% highlight html %}{% include_relative samples/gc-intro-image.html %}{% endhighlight %}
+
diff --git a/design-patterns/gc-intro/gc-intro-image-fr.html b/design-patterns/gc-intro/gc-intro-image-fr.html
new file mode 100644
index 0000000000..4751dcc3c1
--- /dev/null
+++ b/design-patterns/gc-intro/gc-intro-image-fr.html
@@ -0,0 +1,21 @@
+---
+{
+ "title": "Bloc d'introduction avec image",
+ "language": "fr",
+ "altLangPage": "gc-intro-image-en.html",
+ "layout": "no-container",
+ "dateModified": "2024-03-14",
+ "breadcrumbs": [
+ { "title": "Bloc d'introduction - documentation", "link": "design-patterns/gc-intro/gc-intro-doc-fr.html" }
+ ],
+ "layout": "no-container"
+}
+---
+
+
+{% include_relative samples/gc-intro-image.html %}
+
+
+
Code
+ {% highlight html %}{% include_relative samples/gc-intro-image.html %}{% endhighlight %}
+
diff --git a/design-patterns/gc-intro/img/ip-cover-image-1200x726.jpg b/design-patterns/gc-intro/img/ip-cover-image-1200x726.jpg
new file mode 100644
index 0000000000..a1e1f75fea
Binary files /dev/null and b/design-patterns/gc-intro/img/ip-cover-image-1200x726.jpg differ
diff --git a/design-patterns/gc-intro/index.json-ld b/design-patterns/gc-intro/index.json-ld
new file mode 100644
index 0000000000..661eeba6ac
--- /dev/null
+++ b/design-patterns/gc-intro/index.json-ld
@@ -0,0 +1,220 @@
+{
+ "@context": {
+ "@version": 1.1,
+ "dct": "http://purl.org/dc/terms/",
+ "title": { "@id": "dct:title", "@container": "@language" },
+ "description": { "@id": "dct:description", "@container": "@language" },
+ "modified": "dct:modified"
+ },
+ "title": {
+ "en": "Introduction block - Documentation and working example",
+ "fr": "Bloc d’introduction - Documentation et example pratique"
+ },
+ "description": {
+ "en": "Guidance about using the introduction block pattern on Canada.ca.",
+ "fr": "Orientation sur l’utilisation de la configuration de conception du bloc d’introduction sur Canada.ca."
+ },
+ "modified": "2023-08-16",
+ "componentName": "gc-intro",
+ "pages": {
+ "docs": [
+ {
+ "title": "Introduction block",
+ "language": "en",
+ "path": "gc-intro-doc-en.html"
+ },
+ {
+ "title": "Bloc d’introduction",
+ "language": "fr",
+ "path": "gc-intro-doc-fr.html"
+ }
+ ],
+ "examples": [
+ {
+ "title": "Introduction block",
+ "language": "en",
+ "path": "gc-intro-en.html"
+ },
+ {
+ "title": "Bloc d’introduction",
+ "language": "fr",
+ "path": "gc-intro-fr.html"
+ },
+ {
+ "title": "Introduction block with image",
+ "language": "en",
+ "path": "gc-intro-image-en.html"
+ },
+ {
+ "title": "Bloc d’introduction avec image",
+ "language": "fr",
+ "path": "gc-intro-image-fr.html"
+ }
+ ]
+ },
+ "dependencies": [
+ "bgimg"
+ ],
+ "a11yGuidance": "No accessibility guidance.",
+ "variations": [
+ {
+ "name": {
+ "en": "Introduction block - default",
+ "fr": "Bloc d'introduction - par défaut"
+ },
+ "description": {
+ "en": "The introduction block pattern introduces the content of a landing page.",
+ "fr": "La configuration de conception du bloc d’introduction introduit le contenu d’une page d’accueil."
+ },
+ "guidance": {
+ "en": "https://design.canada.ca/common-design-patterns/intro-block.html",
+ "fr": "https://conception.canada.ca/configurations-conception-communes/block-introduction.html"
+ },
+ "iteration": "_:iteration_intro_1",
+ "example": [
+ {
+ "en": { "href": "gc-intro-en.html", "text": "Introduction block" },
+ "fr": { "href": "gc-intro-fr.html", "text": "Bloc d'introduction" }
+ }
+ ],
+ "implementation": [
+ "_:implement_intro"
+ ],
+ "history": [
+ {
+ "en": "March 2024 - Initial implementation of the variation.",
+ "fr": "Mars 2024 - Implémentation initiale de la variante."
+ }
+ ]
+ },
+ {
+ "name": {
+ "en": "Introduction block with image",
+ "fr": "Bloc d'introduction avec image"
+ },
+ "description": {
+ "en": "The introduction block pattern introduces the content of a landing page. This variation can contain an image and a super task button.",
+ "fr": "La configuration de conception du bloc d’introduction introduit le contenu d’une page d’accueil. Cette variation peur contenir une image."
+ },
+ "guidance": {
+ "en": "https://design.canada.ca/common-design-patterns/intro-block.html",
+ "fr": "https://conception.canada.ca/configurations-conception-communes/block-introduction.html"
+ },
+ "example": [
+ {
+ "en": { "href": "gc-intro-image-en.html", "text": "Introduction block with image" },
+ "fr": { "href": "gc-intro-image-fr.html", "text": "Bloc d'introduction avec image" }
+ }
+ ],
+ "implementation": [
+ "_:implement_intro_image"
+ ],
+ "history": [
+ {
+ "en": "March 2024 - Initial implementation of the variation.",
+ "fr": "Mars 2024 - Implémentation initiale de la variante."
+ }
+ ]
+ }
+ ],
+ "implementation": [
+ {
+ "@id": "_:implement_intro",
+ "iteration": "_:iteration_intro_1",
+ "name": {
+ "en": "Standard",
+ "fr": "Standard"
+ },
+ "introduction": {
+ "en": "This implementation is meant for developers/publishers adding the component manually.",
+ "fr": "Cette implémentation est destinée aux développeurs/éditeurs qui ajoutent le composant manuellement."
+ },
+ "instructions": {
+ "en": [
+ "The introduction block pattern is a mandatory element for institutional landing pages and topic pages. It’s optional for other landing pages.",
+ "According to the Canada.ca design system guidance, the introduction block with image contains the following elements:- title (mandatory)
- short description (mandatory)
- supertask button (optional)
",
+ "Refer to the code sample below."
+ ],
+ "fr": [
+ "La configuration de conception du bloc d’introduction est un élément obligatoire pour les pages d’accueil institutionnelles et les pages de sujet. Elle est facultative pour les autres pages d’accueil.",
+ "Selon les directives du système de conception Canada.ca, le bloc d'introduction avec image contient les éléments suivants :- titre (obligatoire)
- description courte (obligatoire)
- bouton de super-tâche (facultatif)
",
+ "Référez-vous au code qui suit."
+ ]
+ },
+ "sample": {
+ "en": [
+ {
+ "@type": "source-code",
+ "description": "Code sample:",
+ "code": "Introduction block
\nThe introduction block pattern introduces the content of a landing page.
\nSuper task button
"
+ }
+ ],
+ "fr": [
+ {
+ "@type": "source-code",
+ "description": "Exemple de code :",
+ "code": "Bloc d'introduction
\nLa configuration de conception du bloc d’introduction introduit le contenu d’une page d’accueil.
\nBouton de super-tâche
"
+ }
+ ]
+ }
+ },
+ {
+ "@id": "_:implement_intro_image",
+ "iteration": "_:iteration_intro_image_1",
+ "name": {
+ "en": "Standard",
+ "fr": "Standard"
+ },
+ "introduction": {
+ "en": "This implementation is meant for developers/publishers adding the component manually.",
+ "fr": "Cette implémentation est destinée aux développeurs/éditeurs qui ajoutent le composant manuellement."
+ },
+ "instructions": {
+ "en": [
+ "The introduction block pattern is a mandatory element for institutional landing pages and topic pages. It’s optional for other landing pages.",
+ "According to the Canada.ca design system guidance, the introduction block with image contains the following elements:- title (mandatory)
- short description (mandatory)
- image (mandatory)
- supertask button (optional)
",
+ "Refer to the code sample below."
+ ],
+ "fr": [
+ "La configuration de conception du bloc d’introduction est un élément obligatoire pour les pages d’accueil institutionnelles et les pages de sujet. Elle est facultative pour les autres pages d’accueil.",
+ "Selon les directives du système de conception Canada.ca, le bloc d'introduction avec image contient les éléments suivants :- titre (obligatoire)
- description courte (obligatoire)
- image (obligatoire)
- bouton de super-tâche (facultatif)
",
+ "Référez-vous au code qui suit."
+ ]
+ },
+ "techConsiderations": {
+ "en": [
+ "It is the responsibility of the author to make sure the whole text has a minimum contrast ratio of 4:1 with the background image on every breakpoint and with a zoom of up to 400%.",
+ "The background image size recommended is 1200px by 726px. For more information on the background image, please consult the official guidelines."
+ ],
+ "fr": [
+ "Il est de la responsabilité de l'auteur de s'assurer que l'ensemble du texte présente un rapport de contraste minimum de 4:1 avec l'image d'arrière-plan sur chaque point d'arrêt et avec un zoom allant jusqu'à 400 %.",
+ "La taille de l’image d’arrière-plan recommandée est de 1200px par 726px. Pour plus d'information sur l'image d'arrière-plan, veuillez consulter les directives officielles."
+ ]
+ },
+ "notes": {
+ "en": [
+ "The introduction block pattern with image must be located outside of the default page container (or any element with the class .container
)."
+ ],
+ "fr": [
+ "La configuration de conception du bloc d’introduction avec image doit être située en dehors du conteneur de page par défaut (ou de tout élément avec la classe .container
)."
+ ]
+ },
+ "sample": {
+ "en": [
+ {
+ "@type": "source-code",
+ "description": "Code sample:",
+ "code": "\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
[Institution name]
\n\t\t\t\t
Short description of the institution’s mandate.
\n\t\t\t\t
Super task button
\n\t\t\t
\n\t\t
\n\t
\n
"
+ }
+ ],
+ "fr": [
+ {
+ "@type": "source-code",
+ "description": "Exemple de code :",
+ "code": "\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
[Nom de l’institution]
\n\t\t\t\t
Description courte du mandat de d’institution.
\n\t\t\t\t
Bouton de super-tâche
\n\t\t\t
\n\t\t
\n\t
\n
"
+ }
+ ]
+ }
+ }
+ ]
+}
diff --git a/design-patterns/gc-intro/samples/gc-intro-image.html b/design-patterns/gc-intro/samples/gc-intro-image.html
new file mode 100644
index 0000000000..2fddb5f8e6
--- /dev/null
+++ b/design-patterns/gc-intro/samples/gc-intro-image.html
@@ -0,0 +1,11 @@
+
diff --git a/design-patterns/gc-intro/samples/gc-intro.html b/design-patterns/gc-intro/samples/gc-intro.html
new file mode 100644
index 0000000000..40434a06ea
--- /dev/null
+++ b/design-patterns/gc-intro/samples/gc-intro.html
@@ -0,0 +1,3 @@
+{{ page.title }}
+{% if page.language == "en" %}The introduction block pattern introduces the content of a landing page.{% else %}La configuration de conception du bloc d'introduction introduit le contenu d'une page de destination.{% endif %}
+{% if page.language == "en" %}Supertask button{% else %}Bouton de super-tâche{% endif %}