diff --git a/45-react-in-angular.md b/45-react-in-angular.md
index b8bc73b..a7fa386 100644
--- a/45-react-in-angular.md
+++ b/45-react-in-angular.md
@@ -2,7 +2,8 @@
title: 🔴 React em angular
description: Desafio 5 é sobre aprender como se beneficiar das várias bibliotecas em React
author: wandrille-guesdon
-challengeNumber: 45
+contributors:
+ - tomalaforge 45
command: angular-react-in-angular
sidebar:
order: 209
diff --git a/docs/src/components/Content.astro b/docs/src/components/Content.astro
index fc2a564..7e2b020 100644
--- a/docs/src/components/Content.astro
+++ b/docs/src/components/Content.astro
@@ -5,6 +5,7 @@ import { getEntry } from 'astro:content';
import Author from './Author.astro';
import ChallengeFooter from './ChallengeFooter.astro';
import CommentSection from './CommentSection.astro';
+import ContributorsFooter from './ContributorsFooter.astro';
const { lang } = Astro.props;
const { data } = await getEntry('i18n', lang);
@@ -26,6 +27,8 @@ const renderCommentSection = !Astro.props.entry.data.noCommentSection;
{ renderCommentSection &&
}
+
+
diff --git a/docs/src/content/config.ts b/docs/src/content/config.ts
index 0dc771d..22cf7b7 100644
--- a/docs/src/content/config.ts
+++ b/docs/src/content/config.ts
@@ -18,6 +18,7 @@ const docs = defineCollection({
noCommentSection: z.boolean().optional().default(false),
challengeNumber: z.union([z.number(), z.boolean()]).default(false),
author: reference('authors').optional(),
+ contributors: z.array(z.string()).optional(),
command: z.string().optional(),
blogLink: z.string().optional(),
videoLink: z
@@ -57,6 +58,8 @@ const i18n = defineCollection({
'subscription.email': z.string(),
'subscription.note.title': z.string(),
'subscription.note.description': z.string(),
+ 'contributor.title': z.string(),
+ 'contributor.subtitle': z.string(),
})
.partial(),
}),
diff --git a/docs/src/content/docs/challenges/angular/1-projection.md b/docs/src/content/docs/challenges/angular/1-projection.md
index f3409b1..08382f3 100644
--- a/docs/src/content/docs/challenges/angular/1-projection.md
+++ b/docs/src/content/docs/challenges/angular/1-projection.md
@@ -2,7 +2,12 @@
title: 🟢 Projection
description: Challenge 1 is about learning how to project DOM element through components
author: thomas-laforge
-challengeNumber: 1
+contributors:
+ - tomalaforge
+ - jdegand
+ - dmmishchenko
+ - kabrunko-dev
+ - svenson95
command: angular-projection
blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5
videoLink:
diff --git a/docs/src/content/docs/challenges/angular/10-pipe-utility.md b/docs/src/content/docs/challenges/angular/10-pipe-utility.md
index f10d9f3..5c99a30 100644
--- a/docs/src/content/docs/challenges/angular/10-pipe-utility.md
+++ b/docs/src/content/docs/challenges/angular/10-pipe-utility.md
@@ -2,6 +2,10 @@
title: 🔴 Utility Wrapper Pipe
description: Challenge 10 is about creating a pipe to wrap utilities
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
challengeNumber: 10
command: angular-pipe-hard
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/13-styling.md b/docs/src/content/docs/challenges/angular/13-styling.md
index 1bbd9be..5210448 100644
--- a/docs/src/content/docs/challenges/angular/13-styling.md
+++ b/docs/src/content/docs/challenges/angular/13-styling.md
@@ -2,6 +2,10 @@
title: 🟠 Highly Customizable CSS
description: Challenge 13 is about creating highly customizable CSS styles
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - kabrunko-dev
challengeNumber: 13
command: angular-styling
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/16-di.md b/docs/src/content/docs/challenges/angular/16-di.md
index 0157970..35bb1bc 100644
--- a/docs/src/content/docs/challenges/angular/16-di.md
+++ b/docs/src/content/docs/challenges/angular/16-di.md
@@ -2,6 +2,9 @@
title: 🔴 Master Dependancy Injection
description: Challenge 16 is about masjering how dependancy injection works
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
challengeNumber: 16
command: angular-di
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/21-achor-scrolling.md b/docs/src/content/docs/challenges/angular/21-achor-scrolling.md
index fb2f693..99fef0b 100644
--- a/docs/src/content/docs/challenges/angular/21-achor-scrolling.md
+++ b/docs/src/content/docs/challenges/angular/21-achor-scrolling.md
@@ -2,6 +2,9 @@
title: 🟢 Anchor Navigation
description: Challenge 21 is about navigating inside the page with anchor
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
challengeNumber: 21
command: angular-anchor-scrolling
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/22-router-input.md b/docs/src/content/docs/challenges/angular/22-router-input.md
index 59676ce..1636832 100644
--- a/docs/src/content/docs/challenges/angular/22-router-input.md
+++ b/docs/src/content/docs/challenges/angular/22-router-input.md
@@ -2,6 +2,10 @@
title: 🟢 @RouterInput()
description: Challenge 22 is about using the @Input decorator to retreive router params.
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
challengeNumber: 22
command: angular-router-input
blogLink: https://medium.com/ngconf/accessing-route-params-in-angular-1f8e12770617
diff --git a/docs/src/content/docs/challenges/angular/3-directive-enhancement.md b/docs/src/content/docs/challenges/angular/3-directive-enhancement.md
index be7b764..6d5ede9 100644
--- a/docs/src/content/docs/challenges/angular/3-directive-enhancement.md
+++ b/docs/src/content/docs/challenges/angular/3-directive-enhancement.md
@@ -2,6 +2,11 @@
title: 🟠 Directive Enhancement
description: Challenge 3 is about enhancing a built-in directive
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - kabrunko-dev
+ - svenson95
challengeNumber: 3
command: angular-ngfor-enhancement
blogLink: https://medium.com/@thomas.laforge/ngfor-enhancement-716b44656a6c
diff --git a/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md b/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md
index 67d84b4..223dff5 100644
--- a/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md
+++ b/docs/src/content/docs/challenges/angular/30-interop-rxjs-signal.md
@@ -2,6 +2,9 @@
title: 🔴 Interoperability Rxjs/Signal
description: Challenge 30 is about learning how to mix signal with Rxjs
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
challengeNumber: 30
command: angular-interop-rxjs-signal
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/31-module-to-standalone.md b/docs/src/content/docs/challenges/angular/31-module-to-standalone.md
index 0d7f77a..701bf14 100644
--- a/docs/src/content/docs/challenges/angular/31-module-to-standalone.md
+++ b/docs/src/content/docs/challenges/angular/31-module-to-standalone.md
@@ -2,6 +2,8 @@
title: 🟢 Module to Standalone
description: Challenge 31 is about migrating a module based application to a standalone application.
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 31
command: angular-module-to-standalone
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/32-bug-cd.md b/docs/src/content/docs/challenges/angular/32-bug-cd.md
index f4a424c..5e402be 100644
--- a/docs/src/content/docs/challenges/angular/32-bug-cd.md
+++ b/docs/src/content/docs/challenges/angular/32-bug-cd.md
@@ -2,6 +2,10 @@
title: 🟠 Change Detection Bug
description: Challenge 32 is about debugging an application that has issue when change detection is triggered
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - jdegand
challengeNumber: 32
command: angular-bug-cd
blogLink: https://medium.com/ngconf/function-calls-inside-template-are-dangerous-15f9822a6629
diff --git a/docs/src/content/docs/challenges/angular/33-decoupling.md b/docs/src/content/docs/challenges/angular/33-decoupling.md
index 78bf040..5a2ea6c 100644
--- a/docs/src/content/docs/challenges/angular/33-decoupling.md
+++ b/docs/src/content/docs/challenges/angular/33-decoupling.md
@@ -2,6 +2,9 @@
title: 🟠 Decoupling Components
description: Challenge 33 is about decoupling two strongly coupled components using Injection Token
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - jdegand
challengeNumber: 33
command: angular-decoupling
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/39-injection-token.md b/docs/src/content/docs/challenges/angular/39-injection-token.md
index 36aab19..5d325a6 100644
--- a/docs/src/content/docs/challenges/angular/39-injection-token.md
+++ b/docs/src/content/docs/challenges/angular/39-injection-token.md
@@ -2,6 +2,9 @@
title: 🟠 InjectionToken
description: Challenge 39 is about learning the power of dependancy injection
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - jdegand
challengeNumber: 39
command: angular-injection-token
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md b/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md
index 88d4e5b..e8e300f 100644
--- a/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md
+++ b/docs/src/content/docs/challenges/angular/4-context-outlet-typed.md
@@ -2,6 +2,11 @@
title: 🔴 Typed ContextOutlet
description: Challenge 4 is about strongly typing ngContextOutlet directives
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 4
command: angular-context-outlet-type
blogLink: https://medium.com/@thomas.laforge/ngtemplateoutlet-type-checking-5d2dcb07a2c6
diff --git a/docs/src/content/docs/challenges/angular/43-signal-input.md b/docs/src/content/docs/challenges/angular/43-signal-input.md
index f1a99e4..d086620 100644
--- a/docs/src/content/docs/challenges/angular/43-signal-input.md
+++ b/docs/src/content/docs/challenges/angular/43-signal-input.md
@@ -2,6 +2,8 @@
title: 🟢 Signal Input
description: Challenge 43 is about learning how to use signal inputs
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 43
command: angular-signal-input
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/44-view-transition.md b/docs/src/content/docs/challenges/angular/44-view-transition.md
index c9550f6..33d096e 100644
--- a/docs/src/content/docs/challenges/angular/44-view-transition.md
+++ b/docs/src/content/docs/challenges/angular/44-view-transition.md
@@ -2,6 +2,9 @@
title: 🔴 View Transition
description: Challenge 44 is about learning the new view transition animation API
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - jdegand
challengeNumber: 44
command: angular-view-transition
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/45-react-in-angular.md b/docs/src/content/docs/challenges/angular/45-react-in-angular.md
index f2f83cd..7f6ab2d 100644
--- a/docs/src/content/docs/challenges/angular/45-react-in-angular.md
+++ b/docs/src/content/docs/challenges/angular/45-react-in-angular.md
@@ -2,6 +2,10 @@
title: 🔴 React in angular
description: Challenge 45 is about learning how to benefit from the numerous libraries in React
author: wandrille-guesdon
+contributors:
+ - wandri
+ - tomalaforge
+ - jdegand
challengeNumber: 45
command: angular-react-in-angular
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/46-simple-animations.md b/docs/src/content/docs/challenges/angular/46-simple-animations.md
index b562755..06c12d7 100644
--- a/docs/src/content/docs/challenges/angular/46-simple-animations.md
+++ b/docs/src/content/docs/challenges/angular/46-simple-animations.md
@@ -2,6 +2,8 @@
title: 🟢 Simple Animations
description: Challenge 46 is about learning Angular's integrated animation API
author: sven-brodny
+contributors:
+ - svenson95
challengeNumber: 46
command: angular-simple-animations
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/5-crud.md b/docs/src/content/docs/challenges/angular/5-crud.md
index 9d34d5a..9139e1a 100644
--- a/docs/src/content/docs/challenges/angular/5-crud.md
+++ b/docs/src/content/docs/challenges/angular/5-crud.md
@@ -2,6 +2,11 @@
title: 🟢 Crud application
description: Challenge 5 is about refactoring a crud application
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 5
command: angular-crud
sidebar:
diff --git a/docs/src/content/docs/challenges/angular/6-permissions.md b/docs/src/content/docs/challenges/angular/6-permissions.md
index eaa4d7a..a4a270b 100644
--- a/docs/src/content/docs/challenges/angular/6-permissions.md
+++ b/docs/src/content/docs/challenges/angular/6-permissions.md
@@ -2,6 +2,11 @@
title: 🟠 Structural Directive
description: Challenge 6 is about creating a structural directive to handle permissions
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - kabrunko-dev
+ - svenson95
challengeNumber: 6
command: angular-permissions
blogLink: https://medium.com/@thomas.laforge/create-a-custom-structural-directive-to-manage-permissions-like-a-pro-11a1acad30ad
diff --git a/docs/src/content/docs/challenges/angular/8-pipe-pure.md b/docs/src/content/docs/challenges/angular/8-pipe-pure.md
index e6871a4..48ed235 100644
--- a/docs/src/content/docs/challenges/angular/8-pipe-pure.md
+++ b/docs/src/content/docs/challenges/angular/8-pipe-pure.md
@@ -2,6 +2,11 @@
title: 🟢 Pure Pipe
description: Challenge 8 is about creating a pure pipe
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - kabrunko-dev
+ - svenson95
challengeNumber: 8
command: angular-pipe-easy
blogLink: https://medium.com/ngconf/deep-dive-into-angular-pipes-c040588cd15d
diff --git a/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md b/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md
index 562c7cf..3853c3d 100644
--- a/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md
+++ b/docs/src/content/docs/challenges/angular/9-pipe-wrapFn.md
@@ -2,6 +2,11 @@
title: 🟠 Wrap Function Pipe
description: Challenge 9 is about creating a pipe to wrap component fonctions
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - kabrunko-dev
+ - svenson95
challengeNumber: 9
command: angular-pipe-intermediate
blogLink: https://medium.com/ngconf/boost-your-apps-performance-by-wrapping-your-functions-inside-a-pipe-7e889a901d1d
diff --git a/docs/src/content/docs/challenges/forms/41-control-value-accessor.md b/docs/src/content/docs/challenges/forms/41-control-value-accessor.md
index aa4c6b5..75ff281 100644
--- a/docs/src/content/docs/challenges/forms/41-control-value-accessor.md
+++ b/docs/src/content/docs/challenges/forms/41-control-value-accessor.md
@@ -2,6 +2,8 @@
title: 🟠 Control Value Accessor
description: Challenge 41 is about creating a custom form control that implements Control Value Accessor interface.
author: stanislav-gavrilov
+contributors:
+ - stillst
challengeNumber: 41
command: forms-control-value-accessor
sidebar:
diff --git a/docs/src/content/docs/challenges/ngrx/2-effect-selector.md b/docs/src/content/docs/challenges/ngrx/2-effect-selector.md
index ea7914b..d4b13e5 100644
--- a/docs/src/content/docs/challenges/ngrx/2-effect-selector.md
+++ b/docs/src/content/docs/challenges/ngrx/2-effect-selector.md
@@ -2,6 +2,11 @@
title: 🟠 Effect vs Selector
description: Challenge 2 is about learning the difference between effects and selectors in NgRx
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 2
command: ngrx-effect-selector
blogLink: https://medium.com/@thomas.laforge/ngrx-effect-vs-reducer-vs-selector-58337ab59043
diff --git a/docs/src/content/docs/challenges/ngrx/7-power-effect.md b/docs/src/content/docs/challenges/ngrx/7-power-effect.md
index fb222a6..cc646e8 100644
--- a/docs/src/content/docs/challenges/ngrx/7-power-effect.md
+++ b/docs/src/content/docs/challenges/ngrx/7-power-effect.md
@@ -2,6 +2,10 @@
title: 🔴 Power of Effect
description: Challenge 7 is about creating an Ngrx effect with another Rxjs Hot observable
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - jdegand
challengeNumber: 7
command: ngrx-notification
sidebar:
diff --git a/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md b/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md
index 545b281..a477658 100644
--- a/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md
+++ b/docs/src/content/docs/challenges/nx/25-generator-lib-ext.md
@@ -2,6 +2,8 @@
title: 🔴 Extend Lib Generator
description: Challenge 25 is about creating a Nx generator to extend the built-in Library Generator
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 25
sidebar:
order: 207
diff --git a/docs/src/content/docs/challenges/nx/26-generator-comp.md b/docs/src/content/docs/challenges/nx/26-generator-comp.md
index 8cc6945..c07f0c7 100644
--- a/docs/src/content/docs/challenges/nx/26-generator-comp.md
+++ b/docs/src/content/docs/challenges/nx/26-generator-comp.md
@@ -2,6 +2,10 @@
title: 🟠 Component Generator
description: Challenge 26 is about creating a Nx generator to create a custom component
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - Sagardevkota
challengeNumber: 26
sidebar:
order: 116
diff --git a/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md b/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md
index 5748b0d..113c605 100644
--- a/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md
+++ b/docs/src/content/docs/challenges/nx/27-forbid-enum-rule.md
@@ -2,6 +2,8 @@
title: 🟢 Custom Eslint Rule
description: Challenge 27 is about creating a custom Eslint Rule to forbid enums
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 27
sidebar:
order: 12
diff --git a/docs/src/content/docs/challenges/nx/42-static-dynamic-import.md b/docs/src/content/docs/challenges/nx/42-static-dynamic-import.md
index 62a149e..bbb1674 100644
--- a/docs/src/content/docs/challenges/nx/42-static-dynamic-import.md
+++ b/docs/src/content/docs/challenges/nx/42-static-dynamic-import.md
@@ -2,6 +2,8 @@
title: 🟢 Static vs Dynamic Import
description: Challenge 42 is about understanding and fixing the eslint rule - Static imports of lazy-loaded libraries are forbidden.
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 42
command: nx-static-dynamic-import
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/12-scroll-cd.md b/docs/src/content/docs/challenges/performance/12-scroll-cd.md
index b6dc265..d932140 100644
--- a/docs/src/content/docs/challenges/performance/12-scroll-cd.md
+++ b/docs/src/content/docs/challenges/performance/12-scroll-cd.md
@@ -2,6 +2,8 @@
title: 🟠 Optimize Change Detection
description: Challenge 12 about optimizing the number of change detection cycle while scrolling
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 12
command: performance-scroll-cd
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/34-default-onpush.md b/docs/src/content/docs/challenges/performance/34-default-onpush.md
index 1b23db5..aa73a98 100644
--- a/docs/src/content/docs/challenges/performance/34-default-onpush.md
+++ b/docs/src/content/docs/challenges/performance/34-default-onpush.md
@@ -2,6 +2,8 @@
title: 🟢 Default vs OnPush
description: Challenge 34 is about learning the difference between Default and OnPush Change Detection Strategy.
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 34
command: performance-default-onpush
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/35-memoize.md b/docs/src/content/docs/challenges/performance/35-memoize.md
index f9a2cd8..b7029ca 100644
--- a/docs/src/content/docs/challenges/performance/35-memoize.md
+++ b/docs/src/content/docs/challenges/performance/35-memoize.md
@@ -2,6 +2,8 @@
title: 🟢 Memoization
description: Challenge 35 is about learning how pure pipe works
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 35
command: performance-memoized
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md b/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md
index 9d6b627..9da26b0 100644
--- a/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md
+++ b/docs/src/content/docs/challenges/performance/36-ngfor-optimize.md
@@ -2,6 +2,8 @@
title: 🟢 NgFor Optimization
description: Challenge 36 is about learning how trackby works
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 36
command: performance-ngfor-optimize
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md b/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md
index 261490e..cbf07db 100644
--- a/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md
+++ b/docs/src/content/docs/challenges/performance/37-ngfor-biglist.md
@@ -2,6 +2,9 @@
title: 🟠 Optimize Big List
description: Challenge 37 is about learning how virtualization optimize big list rendering
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - jdegand
challengeNumber: 37
command: performance-ngfor-biglist
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/40-christmas-web-worker.md b/docs/src/content/docs/challenges/performance/40-christmas-web-worker.md
index a24e9c9..5e21e10 100644
--- a/docs/src/content/docs/challenges/performance/40-christmas-web-worker.md
+++ b/docs/src/content/docs/challenges/performance/40-christmas-web-worker.md
@@ -2,6 +2,9 @@
title: 🟠 Web workers
description: Challenge 40 is about learning how to create and use a web worker
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - jdegand
challengeNumber: 40
command: performance-christmas-web-worker
sidebar:
diff --git a/docs/src/content/docs/challenges/performance/index.mdx b/docs/src/content/docs/challenges/performance/index.mdx
index de7b508..362f7ed 100644
--- a/docs/src/content/docs/challenges/performance/index.mdx
+++ b/docs/src/content/docs/challenges/performance/index.mdx
@@ -2,6 +2,9 @@
title: Angular Performance
prev: false
next: false
+contributors:
+ - tomalaforge
+ - tomer953
description: Learn how to use the Angular Devtool chrome extension.
noCommentSection: true
sidebar:
diff --git a/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md b/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md
index dcebd67..25edabb 100644
--- a/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md
+++ b/docs/src/content/docs/challenges/rxjs/11-bug-chaining-operator.md
@@ -2,6 +2,8 @@
title: 🟠 High Order Operator Bug
description: Challenge 11 is about resolving a Rxjs bug because of high order operators
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 11
command: rxjs-pipe-bug
sidebar:
diff --git a/docs/src/content/docs/challenges/rxjs/14-race-condition.md b/docs/src/content/docs/challenges/rxjs/14-race-condition.md
index bc5cafa..c6d37cb 100644
--- a/docs/src/content/docs/challenges/rxjs/14-race-condition.md
+++ b/docs/src/content/docs/challenges/rxjs/14-race-condition.md
@@ -2,6 +2,8 @@
title: 🟢 Race Condition
description: Challenge 14 is about race condition in Rxjs
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 14
command: rxjs-race-condition
sidebar:
diff --git a/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md b/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md
index 298152b..cab6cb0 100644
--- a/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md
+++ b/docs/src/content/docs/challenges/rxjs/38-rxjs-catch-error.md
@@ -3,6 +3,9 @@ title: 🟢 catchError
description: Challenge 38 is about learning obervable completion.
author: devesh-chaudhari
command: rxjs-catch-error
+contributors:
+ - DeveshChau
+ - tomalaforge
challengeNumber: 38
sidebar:
order: 14
diff --git a/docs/src/content/docs/challenges/testing/17-router.md b/docs/src/content/docs/challenges/testing/17-router.md
index 65afe81..6a282ae 100644
--- a/docs/src/content/docs/challenges/testing/17-router.md
+++ b/docs/src/content/docs/challenges/testing/17-router.md
@@ -2,6 +2,8 @@
title: 🟠 Router
description: Challenge 17 is about testing the router
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 17
command: testing-router-outlet
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/18-nested-comp.md b/docs/src/content/docs/challenges/testing/18-nested-comp.md
index 945650b..7293121 100644
--- a/docs/src/content/docs/challenges/testing/18-nested-comp.md
+++ b/docs/src/content/docs/challenges/testing/18-nested-comp.md
@@ -2,6 +2,8 @@
title: 🟠 Nested Components
description: Challenge 18 is about testing nested components
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 18
command: testing-nested
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/19-input-output.md b/docs/src/content/docs/challenges/testing/19-input-output.md
index 6468c6c..d8e8558 100644
--- a/docs/src/content/docs/challenges/testing/19-input-output.md
+++ b/docs/src/content/docs/challenges/testing/19-input-output.md
@@ -2,6 +2,11 @@
title: 🟠 Input Output
description: Challenge 19 is about testing inputs and ouputs
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 19
command: testing-input-output
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/20-modal.md b/docs/src/content/docs/challenges/testing/20-modal.md
index 93f32c2..1d5df28 100644
--- a/docs/src/content/docs/challenges/testing/20-modal.md
+++ b/docs/src/content/docs/challenges/testing/20-modal.md
@@ -2,6 +2,11 @@
title: 🟠 Modal
description: Challenge 20 is about testing modals
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 20
command: testing-modal
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/23-harness.md b/docs/src/content/docs/challenges/testing/23-harness.md
index bdb9ce3..524c9e8 100644
--- a/docs/src/content/docs/challenges/testing/23-harness.md
+++ b/docs/src/content/docs/challenges/testing/23-harness.md
@@ -2,6 +2,11 @@
title: 🟢 Harness
description: Challenge 23 is about testing with component harnesses
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
+ - jdegand
challengeNumber: 23
command: testing-harness
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/24-harness-creation.md b/docs/src/content/docs/challenges/testing/24-harness-creation.md
index acfbc86..26a0ca3 100644
--- a/docs/src/content/docs/challenges/testing/24-harness-creation.md
+++ b/docs/src/content/docs/challenges/testing/24-harness-creation.md
@@ -2,6 +2,10 @@
title: 🟠 Harness Creation
description: Challenge 24 is about creating a component harness.
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - jdegand
challengeNumber: 24
command: testing-create-harness
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/28-checkbox.md b/docs/src/content/docs/challenges/testing/28-checkbox.md
index 2d1d73e..d25f58d 100644
--- a/docs/src/content/docs/challenges/testing/28-checkbox.md
+++ b/docs/src/content/docs/challenges/testing/28-checkbox.md
@@ -2,6 +2,10 @@
title: 🟢 Checkbox
description: Challenge 28 is about testing a simple checkbox
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - jdegand
challengeNumber: 28
command: testing-checkbox
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/29-real-application.md b/docs/src/content/docs/challenges/testing/29-real-application.md
index e05edd7..1d3c5e4 100644
--- a/docs/src/content/docs/challenges/testing/29-real-application.md
+++ b/docs/src/content/docs/challenges/testing/29-real-application.md
@@ -2,6 +2,10 @@
title: 🔴 Real-life Application
description: Challenge 29 is about testing a real-life application
author: thomas-laforge
+contributors:
+ - tomalaforge
+ - tomer953
+ - svenson95
challengeNumber: 29
command: testing-todos-list
sidebar:
diff --git a/docs/src/content/docs/challenges/testing/index.mdx b/docs/src/content/docs/challenges/testing/index.mdx
index 730f50c..d99f604 100644
--- a/docs/src/content/docs/challenges/testing/index.mdx
+++ b/docs/src/content/docs/challenges/testing/index.mdx
@@ -2,6 +2,8 @@
title: Testing
prev: false
next: false
+contributors:
+ - tomalaforge
description: Introduction to testing challenges.
noCommentSection: true
sidebar:
diff --git a/docs/src/content/docs/challenges/typescript/15-overload-fn.md b/docs/src/content/docs/challenges/typescript/15-overload-fn.md
index 4f629ed..0d89a57 100644
--- a/docs/src/content/docs/challenges/typescript/15-overload-fn.md
+++ b/docs/src/content/docs/challenges/typescript/15-overload-fn.md
@@ -2,6 +2,8 @@
title: 🟠 Function Overload
description: Challenge 15 is about creating overload functions
author: thomas-laforge
+contributors:
+ - tomalaforge
challengeNumber: 15
command: typescript-overload
blogLink: https://medium.com/ngconf/function-overloading-in-typescript-8236706b2c05
diff --git a/docs/src/content/docs/challenges/typescript/47-enums-vs-union-types.md b/docs/src/content/docs/challenges/typescript/47-enums-vs-union-types.md
index a4d9747..d1f853a 100644
--- a/docs/src/content/docs/challenges/typescript/47-enums-vs-union-types.md
+++ b/docs/src/content/docs/challenges/typescript/47-enums-vs-union-types.md
@@ -2,6 +2,9 @@
title: 🟢 Enums vs Union Types
description: Challenge 47 is about the comparison between enums and union types
author: sven-brodny
+contributors:
+ - svenson95
+ - jdegand
challengeNumber: 47
command: typescript-enums-vs-union-types
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/1-projection.md b/docs/src/content/docs/es/challenges/angular/1-projection.md
index 6da5366..d17874f 100644
--- a/docs/src/content/docs/es/challenges/angular/1-projection.md
+++ b/docs/src/content/docs/es/challenges/angular/1-projection.md
@@ -2,6 +2,8 @@
title: 🟢 Proyección
description: Desafio 1 trata sobre aprender a proyectar elementos del DOM a través de componentes,
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 1
command: angular-projection
blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5
diff --git a/docs/src/content/docs/es/challenges/angular/10-pipe-utility.md b/docs/src/content/docs/es/challenges/angular/10-pipe-utility.md
index 8257a7f..c3698a6 100644
--- a/docs/src/content/docs/es/challenges/angular/10-pipe-utility.md
+++ b/docs/src/content/docs/es/challenges/angular/10-pipe-utility.md
@@ -2,6 +2,8 @@
title: 🔴 Pipe Wrapper para utilidades
description: El desafío 10 trata sobre la creación de un pipe para envolver utilidades
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 10
command: angular-pipe-hard
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/13-styling.md b/docs/src/content/docs/es/challenges/angular/13-styling.md
index fce9762..1d7d49e 100644
--- a/docs/src/content/docs/es/challenges/angular/13-styling.md
+++ b/docs/src/content/docs/es/challenges/angular/13-styling.md
@@ -2,6 +2,8 @@
title: 🟠 Estilos CSS Altamente Personalizables
description: El desafío 13 trata sobre la creación de estilos CSS altamente personalizables
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 13
command: angular-styling
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/16-di.md b/docs/src/content/docs/es/challenges/angular/16-di.md
index 03072ff..5f2482e 100644
--- a/docs/src/content/docs/es/challenges/angular/16-di.md
+++ b/docs/src/content/docs/es/challenges/angular/16-di.md
@@ -2,6 +2,8 @@
title: 🔴 Dominar la Inyección de Dependencias
description: El desafío 16 trata sobre dominar y entender como funciona la inyección de dependencias
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 16
command: angular-di
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/21-achor-scrolling.md b/docs/src/content/docs/es/challenges/angular/21-achor-scrolling.md
index 87634a8..06427c4 100644
--- a/docs/src/content/docs/es/challenges/angular/21-achor-scrolling.md
+++ b/docs/src/content/docs/es/challenges/angular/21-achor-scrolling.md
@@ -2,6 +2,8 @@
title: 🟢 Navegación con Anclas
description: El desafío 21 trata sobre la navegación dentro de la página con anclas
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 21
command: angular-anchor-scrolling
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/22-router-input.md b/docs/src/content/docs/es/challenges/angular/22-router-input.md
index 6450719..854461e 100644
--- a/docs/src/content/docs/es/challenges/angular/22-router-input.md
+++ b/docs/src/content/docs/es/challenges/angular/22-router-input.md
@@ -2,6 +2,8 @@
title: 🟢 @RouterInput()
description: El desafío 22 trata sobre el uso del decorador @Input para utilizar parámetros del router.
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 22
command: angular-router-input
blogLink: https://medium.com/ngconf/accessing-route-params-in-angular-1f8e12770617
diff --git a/docs/src/content/docs/es/challenges/angular/3-directive-enhancement.md b/docs/src/content/docs/es/challenges/angular/3-directive-enhancement.md
index e4514ac..8708bb4 100644
--- a/docs/src/content/docs/es/challenges/angular/3-directive-enhancement.md
+++ b/docs/src/content/docs/es/challenges/angular/3-directive-enhancement.md
@@ -2,6 +2,8 @@
title: 🟠 Mejorar Directiva
description: El desafío 3 se trata de una directive incorporada.
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 3
command: angular-ngfor-enhancement
blogLink: https://medium.com/@thomas.laforge/ngfor-enhancement-716b44656a6c
diff --git a/docs/src/content/docs/es/challenges/angular/30-interop-rxjs-signal.md b/docs/src/content/docs/es/challenges/angular/30-interop-rxjs-signal.md
index 9993d7a..2bceced 100644
--- a/docs/src/content/docs/es/challenges/angular/30-interop-rxjs-signal.md
+++ b/docs/src/content/docs/es/challenges/angular/30-interop-rxjs-signal.md
@@ -2,6 +2,8 @@
title: 🔴 Interoperatividad Rxjs/Signal (Señales)
description: El desafío 30 trata sobre aprender a mezclar señales con Rxjs
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 30
command: angular-interop-rxjs-signal
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/31-module-to-standalone.md b/docs/src/content/docs/es/challenges/angular/31-module-to-standalone.md
index e7d3a4e..e4810ef 100644
--- a/docs/src/content/docs/es/challenges/angular/31-module-to-standalone.md
+++ b/docs/src/content/docs/es/challenges/angular/31-module-to-standalone.md
@@ -2,6 +2,8 @@
title: 🟢 De Módulo a Standalone (Independiente)
description: El desafío 31 trata sobre migrar una aplicación basada en módulos a una aplicación independiente.
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 31
command: angular-module-to-standalone
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/32-bug-cd.md b/docs/src/content/docs/es/challenges/angular/32-bug-cd.md
index 41689b1..cdc3866 100644
--- a/docs/src/content/docs/es/challenges/angular/32-bug-cd.md
+++ b/docs/src/content/docs/es/challenges/angular/32-bug-cd.md
@@ -2,6 +2,8 @@
title: 🟠 Bug de Detección de Cambios
description: El desafío 32 trata sobre depurar una aplicación que tiene problemas cuando se activa la detección de cambios
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 32
command: angular-bug-cd
blogLink: https://medium.com/ngconf/function-calls-inside-template-are-dangerous-15f9822a6629
diff --git a/docs/src/content/docs/es/challenges/angular/33-decoupling.md b/docs/src/content/docs/es/challenges/angular/33-decoupling.md
index fda483e..8629a5f 100644
--- a/docs/src/content/docs/es/challenges/angular/33-decoupling.md
+++ b/docs/src/content/docs/es/challenges/angular/33-decoupling.md
@@ -2,6 +2,8 @@
title: 🟠 Desacoplando Componentes
description: El desafío 33 trata sobre desacoplar dos componentes fuertemente unidos utilizando Token de Inyección
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 33
command: angular-decoupling
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/39-injection-token.md b/docs/src/content/docs/es/challenges/angular/39-injection-token.md
index 3504341..f006ffb 100644
--- a/docs/src/content/docs/es/challenges/angular/39-injection-token.md
+++ b/docs/src/content/docs/es/challenges/angular/39-injection-token.md
@@ -2,6 +2,8 @@
title: 🟠 InjectionToken
description: Desafio de Angular 39 para aprender sobre el poder del InjectionToken
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 39
command: angular-injection-token
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/4-context-outlet-typed.md b/docs/src/content/docs/es/challenges/angular/4-context-outlet-typed.md
index 0196812..388bd5b 100644
--- a/docs/src/content/docs/es/challenges/angular/4-context-outlet-typed.md
+++ b/docs/src/content/docs/es/challenges/angular/4-context-outlet-typed.md
@@ -2,6 +2,8 @@
title: 🔴 ContextOutlet en forma de tipo
description: El desafío 4 se trata de tipificar de manera fuerte las directivas de ngContextOutlet
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 4
command: angular-context-outlet-type
blogLink: https://medium.com/@thomas.laforge/ngtemplateoutlet-type-checking-5d2dcb07a2c6
diff --git a/docs/src/content/docs/es/challenges/angular/5-crud.md b/docs/src/content/docs/es/challenges/angular/5-crud.md
index d0c5903..05e069d 100644
--- a/docs/src/content/docs/es/challenges/angular/5-crud.md
+++ b/docs/src/content/docs/es/challenges/angular/5-crud.md
@@ -2,6 +2,8 @@
title: 🟢 Aplicación CRUD
description: El desafío 5 se trata de refactorizar una aplicación CRUD.
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 5
command: angular-crud
sidebar:
diff --git a/docs/src/content/docs/es/challenges/angular/6-permissions.md b/docs/src/content/docs/es/challenges/angular/6-permissions.md
index d6613b3..d0e604a 100644
--- a/docs/src/content/docs/es/challenges/angular/6-permissions.md
+++ b/docs/src/content/docs/es/challenges/angular/6-permissions.md
@@ -2,6 +2,8 @@
title: 🟠 Directiva Estructural
description: El Desafío 6 se trata de generar una Directiva Estructural que manipule los permisos
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 6
command: angular-permissions
blogLink: https://medium.com/@thomas.laforge/create-a-custom-structural-directive-to-manage-permissions-like-a-pro-11a1acad30ad
diff --git a/docs/src/content/docs/es/challenges/angular/8-pipe-pure.md b/docs/src/content/docs/es/challenges/angular/8-pipe-pure.md
index d3228e7..40a4022 100644
--- a/docs/src/content/docs/es/challenges/angular/8-pipe-pure.md
+++ b/docs/src/content/docs/es/challenges/angular/8-pipe-pure.md
@@ -2,6 +2,9 @@
title: 🟢 Pipe Puro
description: El desafío 8 trata sobre la creación de un pipe puro
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
+ - kabrunko - dev
challengeNumber: 8
command: angular-pipe-easy
blogLink: https://medium.com/ngconf/deep-dive-into-angular-pipes-c040588cd15d
diff --git a/docs/src/content/docs/es/challenges/angular/9-pipe-wrapFn.md b/docs/src/content/docs/es/challenges/angular/9-pipe-wrapFn.md
index 588dbfd..ef9c9ec 100644
--- a/docs/src/content/docs/es/challenges/angular/9-pipe-wrapFn.md
+++ b/docs/src/content/docs/es/challenges/angular/9-pipe-wrapFn.md
@@ -2,6 +2,8 @@
title: 🟠 Pipe Wrapper para funciones
description: El desafío 9 trata sobre la creación de un tubo para envolver funciones de componentes
author: thomas-laforge
+contributors:
+ - ErickRodrCodes
challengeNumber: 9
command: angular-pipe-intermediate
blogLink: https://medium.com/ngconf/boost-your-apps-performance-by-wrapping-your-functions-inside-a-pipe-7e889a901d1d
diff --git a/docs/src/content/docs/es/challenges/performance/12-scroll-cd.md b/docs/src/content/docs/es/challenges/performance/12-scroll-cd.md
index 4e7c9f4..cf9ede8 100644
--- a/docs/src/content/docs/es/challenges/performance/12-scroll-cd.md
+++ b/docs/src/content/docs/es/challenges/performance/12-scroll-cd.md
@@ -2,6 +2,8 @@
title: 🟠 Optimizar el Change Detection al desplazarse
description: Desafío 12 sobre la optimización del número de ciclos de detección de cambios al desplazarse
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 12
command: performance-scroll-cd
sidebar:
diff --git a/docs/src/content/docs/es/challenges/performance/34-default-onpush.md b/docs/src/content/docs/es/challenges/performance/34-default-onpush.md
index 941f72c..79073f8 100644
--- a/docs/src/content/docs/es/challenges/performance/34-default-onpush.md
+++ b/docs/src/content/docs/es/challenges/performance/34-default-onpush.md
@@ -2,6 +2,8 @@
title: 🟢 Default vs OnPush
description: El desafío 34 trata sobre aprender la diferencia entre las estrategias de detección de cambios Default y OnPush.
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 34
command: performance-default-onpush
sidebar:
diff --git a/docs/src/content/docs/es/challenges/performance/35-memoize.md b/docs/src/content/docs/es/challenges/performance/35-memoize.md
index 60aeeb9..a888e75 100644
--- a/docs/src/content/docs/es/challenges/performance/35-memoize.md
+++ b/docs/src/content/docs/es/challenges/performance/35-memoize.md
@@ -2,6 +2,8 @@
title: 🟢 Memoización
description: El desafío 35 trata sobre cómo funcionan las tuberías puras
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 35
command: performance-memoized
sidebar:
diff --git a/docs/src/content/docs/es/challenges/performance/36-ngfor-optimize.md b/docs/src/content/docs/es/challenges/performance/36-ngfor-optimize.md
index 463c72a..7566dde 100644
--- a/docs/src/content/docs/es/challenges/performance/36-ngfor-optimize.md
+++ b/docs/src/content/docs/es/challenges/performance/36-ngfor-optimize.md
@@ -2,6 +2,8 @@
title: 🟢 Optimización de NgFor
description: El Desafío 36 trata sobre como funciona trackby
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 36
command: performance-ngfor-optimize
sidebar:
diff --git a/docs/src/content/docs/es/challenges/performance/37-ngfor-biglist.md b/docs/src/content/docs/es/challenges/performance/37-ngfor-biglist.md
index e944c61..93ea09e 100644
--- a/docs/src/content/docs/es/challenges/performance/37-ngfor-biglist.md
+++ b/docs/src/content/docs/es/challenges/performance/37-ngfor-biglist.md
@@ -2,6 +2,8 @@
title: 🟠 Optimizando una lista larga
description: El desafio 37 trata sobre como optimizar una lista grande de elementos
author: thomas-laforge
+contributors:
+ - nelsongutidev
challengeNumber: 37
command: performance-ngfor-biglist
sidebar:
diff --git a/docs/src/content/docs/es/challenges/performance/index.mdx b/docs/src/content/docs/es/challenges/performance/index.mdx
index 9d718ef..6a15106 100644
--- a/docs/src/content/docs/es/challenges/performance/index.mdx
+++ b/docs/src/content/docs/es/challenges/performance/index.mdx
@@ -2,6 +2,8 @@
title: Rendimiento en Angular
prev: false
next: false
+contributors:
+ - nelsongutidev
description: Aprende a usar la extensión de Chrome Angular Devtools.
noCommentSection: true
sidebar:
diff --git a/docs/src/content/docs/es/guides/checkout-answer.md b/docs/src/content/docs/es/guides/checkout-answer.md
index 99ecd8e..1d5962b 100644
--- a/docs/src/content/docs/es/guides/checkout-answer.md
+++ b/docs/src/content/docs/es/guides/checkout-answer.md
@@ -1,6 +1,8 @@
---
title: Revisar la Respuesta de Alguien
description: Guía para revisar la respuesta de otra persona.
+contributors:
+ - nelsongutidev
sidebar:
order: 3
---
diff --git a/docs/src/content/docs/es/guides/contribute.md b/docs/src/content/docs/es/guides/contribute.md
index f04d927..9b3a868 100644
--- a/docs/src/content/docs/es/guides/contribute.md
+++ b/docs/src/content/docs/es/guides/contribute.md
@@ -1,6 +1,8 @@
---
title: Contribuye
description: Guía para contribuir al proyecto
+contributors:
+ - nelsongutidev
sidebar:
order: 4
---
diff --git a/docs/src/content/docs/es/guides/create-challenge.md b/docs/src/content/docs/es/guides/create-challenge.md
index b2e7fe7..e44afbb 100644
--- a/docs/src/content/docs/es/guides/create-challenge.md
+++ b/docs/src/content/docs/es/guides/create-challenge.md
@@ -1,6 +1,8 @@
---
title: Crea tu propio desafío
description: Guía para crear un desafío
+contributors:
+ - nelsongutidev
sidebar:
order: 5
---
diff --git a/docs/src/content/docs/es/guides/faq.md b/docs/src/content/docs/es/guides/faq.md
index 37a9d27..da1e95f 100644
--- a/docs/src/content/docs/es/guides/faq.md
+++ b/docs/src/content/docs/es/guides/faq.md
@@ -1,6 +1,8 @@
---
title: Preguntas Frecuentes
description: Preguntas frecuentes sobre el proyecto
+contributors:
+ - nelsongutidev
sidebar:
order: 7
---
diff --git a/docs/src/content/docs/es/guides/getting-started.md b/docs/src/content/docs/es/guides/getting-started.md
index b790f9e..f533f94 100644
--- a/docs/src/content/docs/es/guides/getting-started.md
+++ b/docs/src/content/docs/es/guides/getting-started.md
@@ -1,6 +1,9 @@
---
title: Inicio
description: Una guía para comenzar con los Desafíos de Angular
+contributors:
+ - nelsongutidev
+ - 1fbr
sidebar:
order: 1
---
diff --git a/docs/src/content/docs/es/guides/rebase.md b/docs/src/content/docs/es/guides/rebase.md
index ff54314..8f60580 100644
--- a/docs/src/content/docs/es/guides/rebase.md
+++ b/docs/src/content/docs/es/guides/rebase.md
@@ -1,6 +1,8 @@
---
title: Hacer rebase a tu rama
description: Guía para hacer rebase a tu rama
+contributors:
+ - nelsongutidev
sidebar:
order: 6
---
diff --git a/docs/src/content/docs/es/guides/resolve-challenge.md b/docs/src/content/docs/es/guides/resolve-challenge.md
index 95363aa..ac89221 100644
--- a/docs/src/content/docs/es/guides/resolve-challenge.md
+++ b/docs/src/content/docs/es/guides/resolve-challenge.md
@@ -1,6 +1,9 @@
---
title: Resolver un Desafío
description: Guía para resolver un desafío
+contributors:
+ - nelsongutidev
+ - 1fbr
sidebar:
order: 2
---
diff --git a/docs/src/content/docs/fr/guides/getting-started.md b/docs/src/content/docs/fr/guides/getting-started.md
index 213d192..562043b 100644
--- a/docs/src/content/docs/fr/guides/getting-started.md
+++ b/docs/src/content/docs/fr/guides/getting-started.md
@@ -1,5 +1,7 @@
---
title: Comment démarrer
+contributors:
+ - tomalaforge
description: Un guide sur la manière de commencer avec sur Angular Challenges.
sidebar:
order: 1
diff --git a/docs/src/content/docs/fr/guides/resolve-challenge.md b/docs/src/content/docs/fr/guides/resolve-challenge.md
index f318395..bfa703f 100644
--- a/docs/src/content/docs/fr/guides/resolve-challenge.md
+++ b/docs/src/content/docs/fr/guides/resolve-challenge.md
@@ -1,5 +1,7 @@
---
title: Résoudre un Challenge
+contributors:
+ - tomalaforge
description: Guide pour résoudre un challenge
sidebar:
order: 2
diff --git a/docs/src/content/docs/fr/index.mdx b/docs/src/content/docs/fr/index.mdx
index ffd0c6e..c16bc02 100644
--- a/docs/src/content/docs/fr/index.mdx
+++ b/docs/src/content/docs/fr/index.mdx
@@ -3,8 +3,6 @@ title: Bienvenue sur Angular Challenges
description: Commence par résoudre ces défis et deviens un meilleur ingénieur FrontEnd Angular.
template: splash
noCommentSection: true
-banner:
- content: J'aurai moins de temps libre dans les deux prochains mois, donc ne vous inquiétez pas si vos pull requests prennent du temps à être examinées.
hero:
tagline: Commence maintenant et deviens un expert Angular !
image:
diff --git a/docs/src/content/docs/guides/checkout-answer.md b/docs/src/content/docs/guides/checkout-answer.md
index 8fe9ad2..5f35284 100644
--- a/docs/src/content/docs/guides/checkout-answer.md
+++ b/docs/src/content/docs/guides/checkout-answer.md
@@ -1,6 +1,10 @@
---
title: Check out Somebody's Answer
description: Guide to checking out someone else's answer.
+contributors:
+ - tomalaforge
+ - gsgonzalez88
+ - 1fbr
sidebar:
order: 3
---
diff --git a/docs/src/content/docs/guides/contribute.md b/docs/src/content/docs/guides/contribute.md
index d1b19ce..a6cbe92 100644
--- a/docs/src/content/docs/guides/contribute.md
+++ b/docs/src/content/docs/guides/contribute.md
@@ -1,6 +1,9 @@
---
title: Contribute
description: Guide to contribute
+contributors:
+ - tomalaforge
+ - jdegand
sidebar:
order: 4
---
diff --git a/docs/src/content/docs/guides/create-challenge.md b/docs/src/content/docs/guides/create-challenge.md
index b4bb0f4..1e46d86 100644
--- a/docs/src/content/docs/guides/create-challenge.md
+++ b/docs/src/content/docs/guides/create-challenge.md
@@ -1,6 +1,9 @@
---
title: Create your own challenge
description: Guide to create your own challenge
+contributors:
+ - tomalaforge
+ - gsgonzalez88
sidebar:
order: 5
---
diff --git a/docs/src/content/docs/guides/faq.md b/docs/src/content/docs/guides/faq.md
index e82f794..93a29c9 100644
--- a/docs/src/content/docs/guides/faq.md
+++ b/docs/src/content/docs/guides/faq.md
@@ -1,6 +1,9 @@
---
title: FAQ
description: Answer to question
+contributors:
+ - tomalaforge
+ - jdegand
sidebar:
order: 7
---
diff --git a/docs/src/content/docs/guides/getting-started.md b/docs/src/content/docs/guides/getting-started.md
index 47f98a8..9e9b278 100644
--- a/docs/src/content/docs/guides/getting-started.md
+++ b/docs/src/content/docs/guides/getting-started.md
@@ -1,6 +1,10 @@
---
title: Getting Started
description: A guide on how to get started with Angular Challenges.
+contributors:
+ - tomalaforge
+ - 1fbr
+ - ho-ssain
sidebar:
order: 1
---
diff --git a/docs/src/content/docs/guides/rebase.md b/docs/src/content/docs/guides/rebase.md
index 782c616..e91badf 100644
--- a/docs/src/content/docs/guides/rebase.md
+++ b/docs/src/content/docs/guides/rebase.md
@@ -1,6 +1,8 @@
---
title: Rebase your branch
description: Guide to rebase a branch to latest change
+contributors:
+ - tomalaforge
sidebar:
order: 6
---
diff --git a/docs/src/content/docs/guides/resolve-challenge.md b/docs/src/content/docs/guides/resolve-challenge.md
index 93f4b5e..c91c9ce 100644
--- a/docs/src/content/docs/guides/resolve-challenge.md
+++ b/docs/src/content/docs/guides/resolve-challenge.md
@@ -1,6 +1,10 @@
---
title: Resolve a Challenge
description: Guide to resolve a challenge
+contributors:
+ - tomalaforge
+ - 1fbr
+ - gsgonzalez88
sidebar:
order: 2
---
diff --git a/docs/src/content/docs/pt/challenges/angular/1-projection.md b/docs/src/content/docs/pt/challenges/angular/1-projection.md
index 352c175..642963a 100644
--- a/docs/src/content/docs/pt/challenges/angular/1-projection.md
+++ b/docs/src/content/docs/pt/challenges/angular/1-projection.md
@@ -2,6 +2,8 @@
title: 🟢 Projeção
description: Desafio 1 é sobre aprender a projetar elementos DOM através de componentes
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 1
command: angular-projection
blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5
diff --git a/docs/src/content/docs/pt/challenges/angular/10-pipe-utility.md b/docs/src/content/docs/pt/challenges/angular/10-pipe-utility.md
index deaf61d..03e0055 100644
--- a/docs/src/content/docs/pt/challenges/angular/10-pipe-utility.md
+++ b/docs/src/content/docs/pt/challenges/angular/10-pipe-utility.md
@@ -2,6 +2,8 @@
title: 🔴 Pipe Empacotador de Utilidade
description: Desafio 10 é sobre a criação de um pipe para empacotar utilidades
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 10
command: angular-pipe-hard
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/13-styling.md b/docs/src/content/docs/pt/challenges/angular/13-styling.md
index b734a44..f6e48bb 100644
--- a/docs/src/content/docs/pt/challenges/angular/13-styling.md
+++ b/docs/src/content/docs/pt/challenges/angular/13-styling.md
@@ -2,6 +2,8 @@
title: 🟠 CSS Altamente Personalizável
description: Desafio 13 é sobre criar estilos CSS altamente personalizáveis
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 13
command: angular-styling
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/21-achor-scrolling.md b/docs/src/content/docs/pt/challenges/angular/21-achor-scrolling.md
index 65147c3..d969d87 100644
--- a/docs/src/content/docs/pt/challenges/angular/21-achor-scrolling.md
+++ b/docs/src/content/docs/pt/challenges/angular/21-achor-scrolling.md
@@ -2,6 +2,8 @@
title: 🟢 Navegação por Âncora
description: Desafio 21 é sobre navegação dentro de uma página por âncora
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 21
command: angular-anchor-scrolling
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/22-router-input.md b/docs/src/content/docs/pt/challenges/angular/22-router-input.md
index 04a851c..ff24f96 100644
--- a/docs/src/content/docs/pt/challenges/angular/22-router-input.md
+++ b/docs/src/content/docs/pt/challenges/angular/22-router-input.md
@@ -2,6 +2,8 @@
title: 🟢 @RouterInput()
description: Desafio 22 é sobre o uso do decorador @Input para recuperar parâmetros do roteador.
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 22
command: angular-router-input
blogLink: https://medium.com/ngconf/accessing-route-params-in-angular-1f8e12770617
diff --git a/docs/src/content/docs/pt/challenges/angular/3-directive-enhancement.md b/docs/src/content/docs/pt/challenges/angular/3-directive-enhancement.md
index 808f997..330410b 100644
--- a/docs/src/content/docs/pt/challenges/angular/3-directive-enhancement.md
+++ b/docs/src/content/docs/pt/challenges/angular/3-directive-enhancement.md
@@ -2,6 +2,8 @@
title: 🟠 Aprimoramento de Diretiva
description: Desafio 3 é sobre o aprimoramento de uma diretiva nativa
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 3
command: angular-ngfor-enhancement
blogLink: https://medium.com/@thomas.laforge/ngfor-enhancement-716b44656a6c
diff --git a/docs/src/content/docs/pt/challenges/angular/30-interop-rxjs-signal.md b/docs/src/content/docs/pt/challenges/angular/30-interop-rxjs-signal.md
index acb3e4b..23bed1c 100644
--- a/docs/src/content/docs/pt/challenges/angular/30-interop-rxjs-signal.md
+++ b/docs/src/content/docs/pt/challenges/angular/30-interop-rxjs-signal.md
@@ -2,6 +2,8 @@
title: 🔴 Interoperabilidade Rxjs/Signal
description: Desafio 30 é sobre aprender como misturar signal com Rxjs
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 30
command: angular-interop-rxjs-signal
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/31-module-to-standalone.md b/docs/src/content/docs/pt/challenges/angular/31-module-to-standalone.md
index a8a733d..ffe9c3c 100644
--- a/docs/src/content/docs/pt/challenges/angular/31-module-to-standalone.md
+++ b/docs/src/content/docs/pt/challenges/angular/31-module-to-standalone.md
@@ -2,6 +2,8 @@
title: 🟢 Módulo para Standalone
description: Desafio 31 é sobre migrar uma aplicação baseada em módulos para uma aplicação baseada em componentes standalone.
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 31
command: angular-module-to-standalone
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md b/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md
index dc0e582..fb4d32a 100644
--- a/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md
+++ b/docs/src/content/docs/pt/challenges/angular/32-bug-cd.md
@@ -2,6 +2,8 @@
title: 🟠 Bug na Detecção de Mudanças
description: Desafio 32 é sobre debuggar uma aplicação que tem um problema quando a detecção de mudanças é disparada
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 32
command: angular-bug-cd
blogLink: https://medium.com/ngconf/function-calls-inside-template-are-dangerous-15f9822a6629
diff --git a/docs/src/content/docs/pt/challenges/angular/39-injection-token.md b/docs/src/content/docs/pt/challenges/angular/39-injection-token.md
index 6071a1a..3af2edf 100644
--- a/docs/src/content/docs/pt/challenges/angular/39-injection-token.md
+++ b/docs/src/content/docs/pt/challenges/angular/39-injection-token.md
@@ -2,6 +2,8 @@
title: 🟠 InjectionToken
description: Desafio 39 é sobre o poder da injeção de dependência
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 39
command: angular-injection-token
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/43-signal-input.md b/docs/src/content/docs/pt/challenges/angular/43-signal-input.md
index 6b77df8..a654a8e 100644
--- a/docs/src/content/docs/pt/challenges/angular/43-signal-input.md
+++ b/docs/src/content/docs/pt/challenges/angular/43-signal-input.md
@@ -2,6 +2,8 @@
title: 🟢 Signal Input
description: Desafio 43 é sobre como usar signal inputs
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 43
command: angular-signal-input
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/44-view-transition.md b/docs/src/content/docs/pt/challenges/angular/44-view-transition.md
index 0d7e984..b8b3e9b 100644
--- a/docs/src/content/docs/pt/challenges/angular/44-view-transition.md
+++ b/docs/src/content/docs/pt/challenges/angular/44-view-transition.md
@@ -2,6 +2,9 @@
title: 🔴 Transição de View
description: Desafio 44 você aprenderá a nova API para animação de transição de view
author: thomas-laforge
+contributors:
+ - kabrunko-dev
+ - svenson95
challengeNumber: 44
command: angular-view-transition
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/5-crud.md b/docs/src/content/docs/pt/challenges/angular/5-crud.md
index 9d8b3a4..b67ffda 100644
--- a/docs/src/content/docs/pt/challenges/angular/5-crud.md
+++ b/docs/src/content/docs/pt/challenges/angular/5-crud.md
@@ -2,6 +2,8 @@
title: 🟢 Aplicação Crud
description: Desafio 5 é sobre refatorar uma aplicação crud is about refactoring a crud application
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 5
command: angular-crud
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/angular/6-permissions.md b/docs/src/content/docs/pt/challenges/angular/6-permissions.md
index 882e6bf..42dd00b 100644
--- a/docs/src/content/docs/pt/challenges/angular/6-permissions.md
+++ b/docs/src/content/docs/pt/challenges/angular/6-permissions.md
@@ -2,6 +2,8 @@
title: 🟠 Diretiva Estrutural
description: Desafio 6 é sobre criar uma diretiva estrutural para manipular permissões
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 6
command: angular-permissions
blogLink: https://medium.com/@thomas.laforge/create-a-custom-structural-directive-to-manage-permissions-like-a-pro-11a1acad30ad
diff --git a/docs/src/content/docs/pt/challenges/angular/8-pipe-pure.md b/docs/src/content/docs/pt/challenges/angular/8-pipe-pure.md
index bfbde21..f096da7 100644
--- a/docs/src/content/docs/pt/challenges/angular/8-pipe-pure.md
+++ b/docs/src/content/docs/pt/challenges/angular/8-pipe-pure.md
@@ -2,6 +2,8 @@
title: 🟢 Pipe Puro
description: Desafio 8 é sobre criar um pipe puro
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 8
command: angular-pipe-easy
blogLink: https://medium.com/ngconf/deep-dive-into-angular-pipes-c040588cd15d
diff --git a/docs/src/content/docs/pt/challenges/angular/9-pipe-wrapFn.md b/docs/src/content/docs/pt/challenges/angular/9-pipe-wrapFn.md
index cd06a29..ff5aaeb 100644
--- a/docs/src/content/docs/pt/challenges/angular/9-pipe-wrapFn.md
+++ b/docs/src/content/docs/pt/challenges/angular/9-pipe-wrapFn.md
@@ -2,6 +2,8 @@
title: 🟠 Pipe Empacotador de Função
description: Challenge 9 is about creating a pipe to wrap component fonctions
author: thomas-laforge
+contributors:
+ - kabrunko-dev
challengeNumber: 9
command: angular-pipe-intermediate
blogLink: https://medium.com/ngconf/boost-your-apps-performance-by-wrapping-your-functions-inside-a-pipe-7e889a901d1d
diff --git a/docs/src/content/docs/pt/challenges/forms/41-control-value-accessor.md b/docs/src/content/docs/pt/challenges/forms/41-control-value-accessor.md
index 7c97df1..e453606 100644
--- a/docs/src/content/docs/pt/challenges/forms/41-control-value-accessor.md
+++ b/docs/src/content/docs/pt/challenges/forms/41-control-value-accessor.md
@@ -2,6 +2,8 @@
title: 🟠 Control Value Accessor
description: Desafio 41 é sobre criar um controle personalizado de formulário que implemente a interface Control Value Accessor.
author: stanislav-gavrilov
+contributors:
+ - kabrunko-dev
challengeNumber: 41
command: forms-control-value-accessor
sidebar:
diff --git a/docs/src/content/docs/pt/challenges/rxjs/38-rxjs-catch-error.md b/docs/src/content/docs/pt/challenges/rxjs/38-rxjs-catch-error.md
index 21f1b37..8d9d6fc 100644
--- a/docs/src/content/docs/pt/challenges/rxjs/38-rxjs-catch-error.md
+++ b/docs/src/content/docs/pt/challenges/rxjs/38-rxjs-catch-error.md
@@ -3,6 +3,8 @@ title: 🟢 catchError
description: Desafio 38 é sobre aprender conclusão de observable
author: devesh-chaudhari
command: rxjs-catch-error
+contributors:
+ - kabrunko-dev
challengeNumber: 38
sidebar:
order: 14
diff --git a/docs/src/content/docs/pt/guides/checkout-answer.md b/docs/src/content/docs/pt/guides/checkout-answer.md
index 425c408..309f413 100644
--- a/docs/src/content/docs/pt/guides/checkout-answer.md
+++ b/docs/src/content/docs/pt/guides/checkout-answer.md
@@ -1,6 +1,8 @@
---
title: Verifique a resposta dos outros
description: Guia para verificar a resposta de outra pessoa
+contributors:
+ - kabrunko-dev
sidebar:
order: 3
---
diff --git a/docs/src/content/docs/pt/guides/contribute.md b/docs/src/content/docs/pt/guides/contribute.md
index 686830f..964a426 100644
--- a/docs/src/content/docs/pt/guides/contribute.md
+++ b/docs/src/content/docs/pt/guides/contribute.md
@@ -1,6 +1,8 @@
---
title: Contribua
description: Guia para contribuir
+contributors:
+ - kabrunko-dev
sidebar:
order: 4
---
diff --git a/docs/src/content/docs/pt/guides/create-challenge.md b/docs/src/content/docs/pt/guides/create-challenge.md
index d081e0b..d7c39db 100644
--- a/docs/src/content/docs/pt/guides/create-challenge.md
+++ b/docs/src/content/docs/pt/guides/create-challenge.md
@@ -1,6 +1,8 @@
---
title: Crie seu próprio desafio
description: Guia para criar seu próprio desafio
+contributors:
+ - kabrunko-dev
sidebar:
order: 5
---
diff --git a/docs/src/content/docs/pt/guides/faq.md b/docs/src/content/docs/pt/guides/faq.md
index 4d87d45..af4505f 100644
--- a/docs/src/content/docs/pt/guides/faq.md
+++ b/docs/src/content/docs/pt/guides/faq.md
@@ -1,6 +1,8 @@
---
title: FAQ
description: Respostas para perguntas
+contributors:
+ - kabrunko-dev
sidebar:
order: 7
---
diff --git a/docs/src/content/docs/pt/guides/getting-started.md b/docs/src/content/docs/pt/guides/getting-started.md
index 25d1bae..57e501b 100644
--- a/docs/src/content/docs/pt/guides/getting-started.md
+++ b/docs/src/content/docs/pt/guides/getting-started.md
@@ -1,6 +1,8 @@
---
title: Começando
description: Um guia de como começar com Desafios Angular.
+contributors:
+ - kabrunko-dev
sidebar:
order: 1
---
diff --git a/docs/src/content/docs/pt/guides/rebase.md b/docs/src/content/docs/pt/guides/rebase.md
index 38973c2..d4bf356 100644
--- a/docs/src/content/docs/pt/guides/rebase.md
+++ b/docs/src/content/docs/pt/guides/rebase.md
@@ -1,6 +1,8 @@
---
title: Rebase sua branch
description: Guia para realizar rebase em uma branch e atualizá-la com as mudanças mais recentes
+contributors:
+ - kabrunko-dev
sidebar:
order: 6
---
diff --git a/docs/src/content/docs/pt/guides/resolve-challenge.md b/docs/src/content/docs/pt/guides/resolve-challenge.md
index 77cf965..630fe48 100644
--- a/docs/src/content/docs/pt/guides/resolve-challenge.md
+++ b/docs/src/content/docs/pt/guides/resolve-challenge.md
@@ -1,6 +1,8 @@
---
title: Resolva um desafio
description: Guia de como resolver um desafio
+contributors:
+ - kabrunko-dev
sidebar:
order: 2
---
diff --git a/docs/src/content/docs/ru/challenges/angular/1-projection.md b/docs/src/content/docs/ru/challenges/angular/1-projection.md
index a08f046..d5118b6 100644
--- a/docs/src/content/docs/ru/challenges/angular/1-projection.md
+++ b/docs/src/content/docs/ru/challenges/angular/1-projection.md
@@ -2,6 +2,8 @@
title: 🟢 Проекция контента
description: Challenge 1 заключается в изучении проекции элементов DOM через компоненты
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 1
command: angular-projection
blogLink: https://medium.com/@thomas.laforge/create-a-highly-customizable-component-cc3a9805e4c5
diff --git a/docs/src/content/docs/ru/challenges/angular/21-achor-scrolling.md b/docs/src/content/docs/ru/challenges/angular/21-achor-scrolling.md
index 716f18b..fc73eca 100644
--- a/docs/src/content/docs/ru/challenges/angular/21-achor-scrolling.md
+++ b/docs/src/content/docs/ru/challenges/angular/21-achor-scrolling.md
@@ -2,6 +2,8 @@
title: 🟢Навигация по якорю
description: Испытание 21 про навигацию на странице с помощью якоря
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 21
command: angular-anchor-scrolling
sidebar:
diff --git a/docs/src/content/docs/ru/challenges/angular/4-context-outlet-typed.md b/docs/src/content/docs/ru/challenges/angular/4-context-outlet-typed.md
index 053897d..199ed32 100644
--- a/docs/src/content/docs/ru/challenges/angular/4-context-outlet-typed.md
+++ b/docs/src/content/docs/ru/challenges/angular/4-context-outlet-typed.md
@@ -2,6 +2,8 @@
title: 🔴 Типизация ContextOutlet
description: Испытание 4 про строгую типизацию ngContextOutlet директивы
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 4
command: angular-context-outlet-type
blogLink: https://medium.com/@thomas.laforge/ngtemplateoutlet-type-checking-5d2dcb07a2c6
diff --git a/docs/src/content/docs/ru/challenges/angular/43-signal-input.md b/docs/src/content/docs/ru/challenges/angular/43-signal-input.md
index 36c86bc..3ae8658 100644
--- a/docs/src/content/docs/ru/challenges/angular/43-signal-input.md
+++ b/docs/src/content/docs/ru/challenges/angular/43-signal-input.md
@@ -2,6 +2,8 @@
title: 🟢 Signal Input
description: Испытание 43 про то как использовать signal inputs
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 43
command: angular-signal-input
sidebar:
diff --git a/docs/src/content/docs/ru/challenges/angular/8-pipe-pure.md b/docs/src/content/docs/ru/challenges/angular/8-pipe-pure.md
index 7cec079..7f4288c 100644
--- a/docs/src/content/docs/ru/challenges/angular/8-pipe-pure.md
+++ b/docs/src/content/docs/ru/challenges/angular/8-pipe-pure.md
@@ -2,6 +2,8 @@
title: 🟢Чистый пайп
description: Испытание 8 про создание чистого пайпа
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 8
command: angular-pipe-easy
blogLink: https://medium.com/ngconf/deep-dive-into-angular-pipes-c040588cd15d
diff --git a/docs/src/content/docs/ru/challenges/forms/41-control-value-accessor.md b/docs/src/content/docs/ru/challenges/forms/41-control-value-accessor.md
index 98659a9..6969bc5 100644
--- a/docs/src/content/docs/ru/challenges/forms/41-control-value-accessor.md
+++ b/docs/src/content/docs/ru/challenges/forms/41-control-value-accessor.md
@@ -2,6 +2,8 @@
title: 🟠 Control Value Accessor
description: Испытание 41 про создание пользовательское поле формы которое использует интерфейс ControlValueAccessor.
author: stanislav-gavrilov
+contributors:
+ - stillst
challengeNumber: 41
command: forms-control-value-accessor
sidebar:
diff --git a/docs/src/content/docs/ru/challenges/performance/40-christmas-web-worker.md b/docs/src/content/docs/ru/challenges/performance/40-christmas-web-worker.md
index 674ceed..2377546 100644
--- a/docs/src/content/docs/ru/challenges/performance/40-christmas-web-worker.md
+++ b/docs/src/content/docs/ru/challenges/performance/40-christmas-web-worker.md
@@ -2,6 +2,8 @@
title: 🟠 Веб-воркеры
description: Испытание 40 о том как создать и использовать веб-воркер
author: thomas-laforge
+contributors:
+ - stillst
challengeNumber: 40
command: performance-christmas-web-worker
sidebar:
diff --git a/docs/src/content/docs/ru/guides/checkout-answer.md b/docs/src/content/docs/ru/guides/checkout-answer.md
index fc2c117..e2cb8f4 100644
--- a/docs/src/content/docs/ru/guides/checkout-answer.md
+++ b/docs/src/content/docs/ru/guides/checkout-answer.md
@@ -1,6 +1,9 @@
---
title: Изучайте чужие решения
description: Руководство по просмотру чужого ответа.
+contributors:
+ - stillst
+ - 1fbr
sidebar:
order: 3
---
diff --git a/docs/src/content/docs/ru/guides/contribute.md b/docs/src/content/docs/ru/guides/contribute.md
index ed83760..c400757 100644
--- a/docs/src/content/docs/ru/guides/contribute.md
+++ b/docs/src/content/docs/ru/guides/contribute.md
@@ -1,6 +1,8 @@
---
title: Вносите свой вклад
description: Описание как помочь проекту
+contributors:
+ - stillst
sidebar:
order: 4
---
diff --git a/docs/src/content/docs/ru/guides/create-challenge.md b/docs/src/content/docs/ru/guides/create-challenge.md
index 7f09f37..a77e4b0 100644
--- a/docs/src/content/docs/ru/guides/create-challenge.md
+++ b/docs/src/content/docs/ru/guides/create-challenge.md
@@ -1,6 +1,8 @@
---
title: Создайте свое испытание
description: Руководство по созданию испытания
+contributors:
+ - stillst
sidebar:
order: 5
---
diff --git a/docs/src/content/docs/ru/guides/faq.md b/docs/src/content/docs/ru/guides/faq.md
index f3fe0c6..c092f96 100644
--- a/docs/src/content/docs/ru/guides/faq.md
+++ b/docs/src/content/docs/ru/guides/faq.md
@@ -1,6 +1,8 @@
---
title: Часто задаваемые вопросы
description: Ответы на вопросы
+contributors:
+ - stillst
sidebar:
order: 7
---
diff --git a/docs/src/content/docs/ru/guides/getting-started.md b/docs/src/content/docs/ru/guides/getting-started.md
index b183c2f..e269e9b 100644
--- a/docs/src/content/docs/ru/guides/getting-started.md
+++ b/docs/src/content/docs/ru/guides/getting-started.md
@@ -1,6 +1,9 @@
---
title: Первые шаги
description: Руководство о том, как начать работу с испытаниями Angular.
+contributors:
+ - stillst
+ - 1fbr
sidebar:
order: 1
---
diff --git a/docs/src/content/docs/ru/guides/rebase.md b/docs/src/content/docs/ru/guides/rebase.md
index 7ca098f..dad4d29 100644
--- a/docs/src/content/docs/ru/guides/rebase.md
+++ b/docs/src/content/docs/ru/guides/rebase.md
@@ -1,6 +1,8 @@
---
title: Сделайте rebase вашей ветки
description: Руководство по rebase ветки на последние изменения
+contributors:
+ - stillst
sidebar:
order: 6
---
diff --git a/docs/src/content/docs/ru/guides/resolve-challenge.md b/docs/src/content/docs/ru/guides/resolve-challenge.md
index fe129d1..1b09778 100644
--- a/docs/src/content/docs/ru/guides/resolve-challenge.md
+++ b/docs/src/content/docs/ru/guides/resolve-challenge.md
@@ -1,6 +1,9 @@
---
title: Пройдите испытание
description: Инструкция по прохождению испытания
+contributors:
+ - stillst
+ - 1fbr
sidebar:
order: 2
---
diff --git a/docs/src/content/i18n/en.json b/docs/src/content/i18n/en.json
index 0e1f069..8a5a767 100644
--- a/docs/src/content/i18n/en.json
+++ b/docs/src/content/i18n/en.json
@@ -19,5 +19,7 @@
"subscription.button": "Subscribe",
"subscription.email": "username@gmail.com",
"subscription.note.title": "Notes",
- "subscription.note.description": "This email will only be used for sending new challenges updates"
+ "subscription.note.description": "This email will only be used for sending new challenges updates",
+ "contributor.title": "Contributors",
+ "contributor.subtitle": "Thanks to all the contributors who have helped make this documentation better!"
}
diff --git a/docs/src/content/i18n/es.json b/docs/src/content/i18n/es.json
index e7cf677..43dbadf 100644
--- a/docs/src/content/i18n/es.json
+++ b/docs/src/content/i18n/es.json
@@ -59,5 +59,7 @@
"subscription.button": "Suscríbete",
"subscription.email": "usuario@gmail.com",
"subscription.note.title": "Notas",
- "subscription.note.description": "Este correo se utilizará para informar acerca de nuevos retos"
+ "subscription.note.description": "Este correo se utilizará para informar acerca de nuevos retos",
+ "contributor.title": "Contributors",
+ "contributor.subtitle": "Thanks to all the contributors who have helped make this documentation better!"
}
diff --git a/docs/src/content/i18n/fr.json b/docs/src/content/i18n/fr.json
index 202bc45..0a08cab 100644
--- a/docs/src/content/i18n/fr.json
+++ b/docs/src/content/i18n/fr.json
@@ -1,7 +1,7 @@
{
"page.title.challenge": "Challenge",
"author.createdBy": "Créé par",
- "buttons.email": "Email subscription",
+ "buttons.email": "Souscrire newsletter",
"buttons.star": "Donne une étoile",
"buttons.sponsor": "Sponsorise",
"buttons.clipboardCopy": "Copied!",
@@ -19,5 +19,7 @@
"subscription.button": "Subscribe",
"subscription.email": "username@gmail.com",
"subscription.note.title": "Notes",
- "subscription.note.description": "This email will only be used for sending new challenges updates"
+ "subscription.note.description": "This email will only be used for sending new challenges updates",
+ "contributor.title": "Contributors",
+ "contributor.subtitle": "Thanks to all the contributors who have helped make this documentation better!"
}
diff --git a/docs/src/content/i18n/pt.json b/docs/src/content/i18n/pt.json
index 75bf903..12cd943 100644
--- a/docs/src/content/i18n/pt.json
+++ b/docs/src/content/i18n/pt.json
@@ -20,5 +20,7 @@
"subscription.button": "Inscrever-se",
"subscription.email": "usuario@gmail.com",
"subscription.note.title": "Notas",
- "subscription.note.description": "Este email será apenas usado para enviar atualizações de novos desafios"
+ "subscription.note.description": "Este email será apenas usado para enviar atualizações de novos desafios",
+ "contributor.title": "Contributors",
+ "contributor.subtitle": "Thanks to all the contributors who have helped make this documentation better!"
}
diff --git a/docs/src/content/i18n/ru.json b/docs/src/content/i18n/ru.json
index 4e58543..bfa1406 100644
--- a/docs/src/content/i18n/ru.json
+++ b/docs/src/content/i18n/ru.json
@@ -20,5 +20,7 @@
"subscription.button": "Подписаться",
"subscription.email": "username@gmail.com",
"subscription.note.title": "Примечание",
- "subscription.note.description": "Этот email будет использоваться только для сообщений о новых испытаниях"
+ "subscription.note.description": "Этот email будет использоваться только для сообщений о новых испытаниях",
+ "contributor.title": "Contributors",
+ "contributor.subtitle": "Thanks to all the contributors who have helped make this documentation better!"
}
diff --git a/libs/cli/src/generators/challenge/files/docs/__challengeNumber__-__projectName__.md__tmpl__ b/libs/cli/src/generators/challenge/files/docs/__challengeNumber__-__projectName__.md__tmpl__
index 40bc795..69bf884 100644
--- a/libs/cli/src/generators/challenge/files/docs/__challengeNumber__-__projectName__.md__tmpl__
+++ b/libs/cli/src/generators/challenge/files/docs/__challengeNumber__-__projectName__.md__tmpl__
@@ -2,6 +2,8 @@
title: <%= difficulty %> <%= title %>
description: Challenge <%= challengeNumber %> is about ...
author: <%= author %>
+contributors:
+ - tomalaforge
challengeNumber: <%= challengeNumber %>
command: <%= appProjectName %>
sidebar: