mirror of
https://github.com/Raghu-Ch/angular-challenges.git
synced 2026-02-11 05:13:02 -05:00
Merge branch 'tomalaforge:main' into translate-challenge-5
This commit is contained in:
@@ -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(),
|
||||
}),
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
title: Testing
|
||||
prev: false
|
||||
next: false
|
||||
contributors:
|
||||
- tomalaforge
|
||||
description: Introduction to testing challenges.
|
||||
noCommentSection: true
|
||||
sidebar:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
---
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Contribuye
|
||||
description: Guía para contribuir al proyecto
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
sidebar:
|
||||
order: 4
|
||||
---
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Crea tu propio desafío
|
||||
description: Guía para crear un desafío
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
sidebar:
|
||||
order: 5
|
||||
---
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Preguntas Frecuentes
|
||||
description: Preguntas frecuentes sobre el proyecto
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
sidebar:
|
||||
order: 7
|
||||
---
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
---
|
||||
title: Inicio
|
||||
description: Una guía para comenzar con los Desafíos de Angular
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
- 1fbr
|
||||
sidebar:
|
||||
order: 1
|
||||
---
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Hacer rebase a tu rama
|
||||
description: Guía para hacer rebase a tu rama
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
sidebar:
|
||||
order: 6
|
||||
---
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
---
|
||||
title: Resolver un Desafío
|
||||
description: Guía para resolver un desafío
|
||||
contributors:
|
||||
- nelsongutidev
|
||||
- 1fbr
|
||||
sidebar:
|
||||
order: 2
|
||||
---
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
---
|
||||
title: Résoudre un Challenge
|
||||
contributors:
|
||||
- tomalaforge
|
||||
description: Guide pour résoudre un challenge
|
||||
sidebar:
|
||||
order: 2
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
---
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
---
|
||||
title: Contribute
|
||||
description: Guide to contribute
|
||||
contributors:
|
||||
- tomalaforge
|
||||
- jdegand
|
||||
sidebar:
|
||||
order: 4
|
||||
---
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
---
|
||||
title: Create your own challenge
|
||||
description: Guide to create your own challenge
|
||||
contributors:
|
||||
- tomalaforge
|
||||
- gsgonzalez88
|
||||
sidebar:
|
||||
order: 5
|
||||
---
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
---
|
||||
title: FAQ
|
||||
description: Answer to question
|
||||
contributors:
|
||||
- tomalaforge
|
||||
- jdegand
|
||||
sidebar:
|
||||
order: 7
|
||||
---
|
||||
|
||||
@@ -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
|
||||
---
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
---
|
||||
title: Rebase your branch
|
||||
description: Guide to rebase a branch to latest change
|
||||
contributors:
|
||||
- tomalaforge
|
||||
sidebar:
|
||||
order: 6
|
||||
---
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
---
|
||||
title: Resolve a Challenge
|
||||
description: Guide to resolve a challenge
|
||||
contributors:
|
||||
- tomalaforge
|
||||
- 1fbr
|
||||
- gsgonzalez88
|
||||
sidebar:
|
||||
order: 2
|
||||
---
|
||||
|
||||
@@ -69,7 +69,10 @@ import SubscriptionForm from '../../components/SubscriptionForm.astro';
|
||||
---
|
||||
|
||||
<div class="article-footer">
|
||||
<a href="https://github.com/sponsors/tomalaforge" alt="Sponsor link">
|
||||
<a
|
||||
class="action"
|
||||
href="https://github.com/sponsors/tomalaforge"
|
||||
alt="Sponsor link">
|
||||
<MyIcon name="fillHeart" size="1.2rem" color="white" />
|
||||
Sponsor the Project
|
||||
</a>
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user