agentleFS
SleestkSleestk/Skills-Pipeline/Angular/SKILL.md

angular-developer

Skill86 starsChanged 4 months agoMITView on GitHub

Expert Angular v20 developer skill. Covers Signals, Components, Templates, Directives, DI, Routing, Forms, HTTP Client, SSR/Hydration, Testing, i18n, Animations, Drag and Drop, and Best Practices (Style Guide, Security, Accessibility, Error Handling, Performance, Updates). Trigger on any mention of Angular, component, directive, signal, template, routing, guard, resolver, pipe, service, dependency injection, standalone, SSR, hydration, change detection, OnPush, zoneless, reactive forms, HttpClient, interceptor, i18n, CDK, drag-drop, or Angular CLI commands (ng generate, ng build, ng serve, ng test, ng update). Also trigger for angular.json, tsconfig, or Angular file conventions (.component.ts, .service.ts, .pipe.ts, .spec.ts). Even if the user just says "build this in Angular" or "why is my Angular app broken" — trigger immediately.

22 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use brainstorming, grill-me and 1 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • OpenAISkill

    brainstorming

    You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.

    Also in 3 projects that use this

  • GoogleSkill

    grill-me

    A relentless interview to sharpen a plan or design.

    Also in 3 projects that use this

  • BlockSkill

    frontend-design

    Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.

    Also in 3 projects that use this

  • Other versions22 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 22

    1. angular/angular★ 101ksame name
    2. ghostfolio/ghostfolio★ 9.7ksame name
    3. jsverse/transloco★ 2.3ksame name
    4. dotCMS/core★ 971same name
    5. angular/skills★ 719same name
    6. biaogebusy/web-builder★ 583same name
    7. azerothcore/Keira3★ 463same name
    8. Fmarzochi/EGC★ 61same name
    9. L-X-T/ng-agentic-skills★ 13same name
    10. JuankCadavid/akili-specs★ 10same name

    12 more not listed

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repositoryOne other file it gives its agents.

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 22 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When the user is working on an Angular task, identify which topic applies and read the corresponding reference file before responding.

    line 14
  2. Very specific:

    All reference files are located in references/ relative to this SKILL.md.

    line 18
  3. Distinctive:

    When a user asks about Angular, follow this decision tree:

    line 139
  4. Distinctive:

    When in doubt between approaches, prefer: signals > computed > effect > RxJS

    line 177

“Common” is measured: kept by at least 6 in 10 of the 22 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Angular Developer Skill (v20)

Purpose

This skill provides comprehensive Angular v20 reference documentation scraped directly from the official v20.angular.dev docs. Use it for any Angular development task — writing components, debugging, architecting features, optimizing performance, or following best practices.

How to Use

When the user is working on an Angular task, identify which topic applies and read the corresponding reference file before responding. Multiple reference files may apply to a single task — read all relevant ones.

Reference Files

All reference files are located in references/ relative to this SKILL.md.

In-depth Guides

TopicFileWhen to read
Signals — Overviewreferences/signals/overview.mdsignal(), computed(), effect(), untracked(), equality functions, OnPush integration
Signals — linkedSignalreferences/signals/linked-signal.mdlinkedSignal(), dependent writable state, source+computation form, previous value
Signals — resourcereferences/signals/resource.mdresource(), async reactivity, params, loader, abort, reload, ResourceStatus, httpResource
Components — Overviewreferences/components/overview.mdComponent anatomy, @Component decorator, metadata, standalone components, imports, host element, view, component tree
Components — Selectorsreferences/components/selectors.mdType/attribute/class selectors, :not, combining selectors, selector prefixes, attribute selector use-cases
Components — Stylingreferences/components/styling.mdInline vs file styles, ViewEncapsulation (Emulated/ShadowDom/None), :host, ::ng-deep, <style> in templates, external style refs
Components — Inputsreferences/components/inputs.mdSignal input(), input.required(), transforms, aliases, model() for two-way, @Input decorator, getters/setters
Components — Outputsreferences/components/outputs.mdSignal output(), emitting data, aliases, programmatic subscribe, @Output/EventEmitter
Components — Content Projectionreferences/components/content-projection.md<ng-content>, multiple slots with select, fallback content, ngProjectAs
Components — Host Elementsreferences/components/host-elements.mdhost property, attribute/class/style/event bindings, @HostBinding/@HostListener, binding collisions, CSS custom properties, HostAttributeToken
Components — Lifecyclereferences/components/lifecycle.mdAll lifecycle hooks order and details, ngOnChanges/SimpleChanges, DestroyRef, afterNextRender/afterEveryRender phases
Components — Queriesreferences/components/queries.mdviewChild/viewChildren, contentChild/contentChildren, required queries, locators, read option, descendants, @ViewChild/@ContentChild/QueryList
Components — DOM APIsreferences/components/dom-apis.mdElementRef, render callbacks, Renderer2, when/when-not to use DOM APIs, XSS risk of innerHTML
Components — Inheritancereferences/components/inheritance.mdExtending components/directives, inherited metadata, forwarding DI deps, overriding lifecycle methods
Components — Programmatic Renderingreferences/components/programmatic-rendering.mdNgComponentOutlet, ViewContainerRef.createComponent, lazy-loading, inputBinding/outputBinding/twoWayBinding, popup pattern with createComponent + hostElement
Components — Advanced Configreferences/components/advanced-configuration.mdChangeDetectionStrategy.OnPush, preserveWhitespaces, CUSTOM_ELEMENTS_SCHEMA
Components — Custom Elementsreferences/components/elements.md@angular/elements, createCustomElement(), input→attribute mapping, output→custom event, typings with NgElement/WithProperties
Templates — Overviewreferences/templates/overview.mdTemplate syntax overview, differences from HTML, what topics templates cover
Templates — Bindingreferences/templates/binding.mdText interpolation {{ }}, property [], attribute [attr.], CSS class/style bindings, signal-based updates
Templates — Event Listenersreferences/templates/event-listeners.md(event) syntax, $event, key modifiers, preventDefault, custom event plugins via EVENT_MANAGER_PLUGINS
Templates — Two-Way Bindingreferences/templates/two-way-binding.md[()] banana-in-a-box, ngModel with FormsModule, component two-way binding with model()
Templates — Control Flowreferences/templates/control-flow.md@if/@else if/@else, as alias, @for with track, contextual vars, @empty, @switch
Templates — Pipesreferences/templates/pipes.mdBuilt-in pipes, | operator, chaining, parameters, pure vs impure, custom pipes with @Pipe decorator
Templates — ng-contentreferences/templates/ng-content.mdContent projection, <ng-content /> slot, parent→child content rendering
Templates — ng-templatereferences/templates/ng-template.mdTemplate fragments, TemplateRef, #ref on ng-template, NgTemplateOutlet, ViewContainerRef.createEmbeddedView, context params, structural directives
Templates — ng-containerreferences/templates/ng-container.mdGrouping without DOM nodes, NgComponentOutlet, NgTemplateOutlet, structural directives, DI injection via container
Templates — Variablesreferences/templates/variables.md@let local vars, scope, non-reassignable, template reference vars #name, exportAs, use with queries
Templates — @deferreferences/templates/defer.mdDeferrable views, lazy loading, @placeholder/@loading/@error, triggers (idle/viewport/interaction/hover/immediate/timer/when), prefetch, testing, SSR/HMR notes
Templates — Expression Syntaxreferences/templates/expression-syntax.mdSupported/unsupported literals, globals, operators, optional chaining quirk, no declarations, statement vs expression differences
Templates — Whitespacereferences/templates/whitespace.mdDefault whitespace collapsing, preserveWhitespaces, &ngsp; entity
Directives — Overviewreferences/directives/overview.mdBuilt-in directives, NgClass, NgStyle, NgModel, NgIf, NgFor (trackBy), NgSwitch, <ng-container>
Directives — Attribute Directivesreferences/directives/attribute-directives.mdCustom attribute directives, ElementRef, host event bindings, input() for passing values, NgNonBindable
Directives — Structural Directivesreferences/directives/structural-directives.md<ng-template>, shorthand * syntax, microsyntax grammar, creating structural directives, TemplateRef/ViewContainerRef, template type guards (ngTemplateGuard_, ngTemplateContextGuard)
Directives — Composition APIreferences/directives/directive-composition-api.mdhostDirectives, including/aliasing inputs and outputs, composing directives on directives, execution order, DI with host directives
Directives — NgOptimizedImagereferences/directives/image-optimization.mdNgOptimizedImage, ngSrc, priority, fill mode, width/height, placeholders, srcset, loaders (built-in and custom), loaderParams, LCP optimization
Dependency Injection — Overviewreferences/dependency-injection/overview.mdDI concepts, what services are, inject() function, valid injection contexts
Dependency Injection — Creating Servicesreferences/dependency-injection/creating-and-using-services.mdng generate service, @Injectable, providedIn: 'root', injecting into components and services
Dependency Injection — Defining Providersreferences/dependency-injection/defining-dependency-providers.mdInjectionToken, useClass/useValue/useFactory/useExisting, multi, provider scopes (app/component/route), provide* library pattern
Dependency Injection — Injection Contextreferences/dependency-injection/injection-context.mdWhat contexts allow inject(), runInInjectionContext, assertInInjectionContext, NG0203 error
Dependency Injection — Hierarchical Injectorsreferences/dependency-injection/hierarchical-dependency-injection.mdEnvironmentInjector vs ElementInjector, resolution rules, modifiers (optional/self/skipSelf/host), providers vs viewProviders, logical template tree, use-case scenarios
Dependency Injection — Lightweight Tokensreferences/dependency-injection/lightweight-injection-tokens.mdToken retention problem, abstract class pattern, useExisting, tree-shaking for libraries
Dependency Injection — DI in Actionreferences/dependency-injection/di-in-action.mdElementRef for DOM access, forwardRef() for circular dependencies
Routing — Overviewreferences/routing/overview.mdWhat Angular Router is, the three parts of routing (routes/outlets/links), available features overview
Routing — Define Routesreferences/routing/define-routes.mdRoutes, static/parameterized/wildcard paths, provideRouter, loadComponent lazy loading, redirects, page titles, TitleStrategy, route-level providers, static data, nested/child routes
Routing — Outletsreferences/routing/show-routes-with-outlets.mdRouterOutlet, nested outlets, named secondary outlets, outlet lifecycle events (activate/deactivate/attach/detach), routerOutletData/ROUTER_OUTLET_DATA
Routing — Navigationreferences/routing/navigate-to-routes.mdRouterLink, absolute vs relative paths, string vs array syntax, router.navigate(), router.navigateByUrl(), relativeTo, replaceUrl
Routing — Read Route Statereferences/routing/read-route-state.mdActivatedRoute, route snapshots, route params, query params, matrix params, RouterLinkActive, routerLinkActiveOptions, ariaCurrentWhenActive
Routing — Redirectsreferences/routing/redirecting-routes.mdredirectTo, pathMatch: 'prefix'/'full', conditional redirects with RedirectFunction
Routing — Guardsreferences/routing/route-guards.mdCanActivate, CanActivateChild, CanDeactivate, CanMatch, guard return types, UrlTree/RedirectCommand, applying guards, ng generate guard
Routing — Resolversreferences/routing/data-resolvers.mdResolveFn, resolve route config, accessing data via ActivatedRoute or withComponentInputBinding, error handling (withNavigationErrorHandler, RedirectCommand), parent→child resolver data
Routing — Lifecycle & Eventsreferences/routing/lifecycle-and-events.mdAll router events in order, subscribing to Router.events, withDebugTracing, loading indicators, analytics, error handling patterns
Routing — Testingreferences/routing/testing.mdRouterTestingHarness, testing route params/guards/outlets/nested routes/query params, best practices (don't mock Angular Router)
Routing — Common Tasksreferences/routing/common-router-tasks.mdwithComponentInputBinding, 404 page, link parameters array, LocationStrategy, PathLocationStrategy vs HashLocationStrategy, <base href>
Routing — UrlMatcherreferences/routing/routing-with-urlmatcher.mdUrlMatcher, custom route matching functions, UrlSegment, posParams, use cases (social handles, version URLs)
Routing — Rendering Strategiesreferences/routing/rendering-strategies.mdCSR vs SSG vs SSR trade-offs, decision matrix, hydration overview
Routing — Customizing Behaviorreferences/routing/customizing-route-behavior.mdwithRouterConfig options (canceledNavigationResolution, onSameUrlNavigation, paramsInheritanceStrategy, urlUpdateStrategy, defaultQueryParamsHandling), RouteReuseStrategy, preloading strategies, UrlHandlingStrategy, custom matchers
Routing — Referencereferences/routing/router-reference.mdComplete router events table, all router terminology, <base href>, HashLocationStrategy
Routing — View Transitionsreferences/routing/route-transition-animations.mdwithViewTransitions, View Transitions API integration, CSS animation customization, onViewTransitionCreated, skipTransition()
Forms — Overviewreferences/forms/overview.mdChoosing between reactive vs template-driven, key differences, common foundation classes (FormControl/FormGroup/FormArray/ControlValueAccessor), data flow, mutability, testing comparison
Forms — Reactive Formsreferences/forms/reactive-forms.mdFormControl, FormGroup, FormArray, FormBuilder, setValue/patchValue, formControlName/formGroupName/formArrayName, events observable, unified state change events, type guard utilities (isFormControl etc.)
Forms — Typed Formsreferences/forms/typed-forms.mdStrictly typed reactive forms (Angular 14+), nullability, nonNullable, explicit type params, FormRecord, UntypedFormGroup/UntypedFormControl, NonNullableFormBuilder
Forms — Template-Drivenreferences/forms/template-driven-forms.mdNgModel, NgForm, NgModelGroup, two-way binding with [(ngModel)], #ref="ngModel", control state CSS classes (ng-valid/ng-dirty/ng-touched), ngSubmit, form reset
Forms — Validationreferences/forms/form-validation.mdBuilt-in validators, custom sync/async validators (ValidatorFn/AsyncValidatorFn), NG_VALIDATORS/NG_ASYNC_VALIDATORS, cross-field validation, control status CSS classes, updateOn (change/blur/submit), ngNativeValidate
Forms — Dynamic Formsreferences/forms/dynamic-forms.mdMetadata-driven form generation, QuestionBase pattern, QuestionControlService, @switch on controlType, computed() signal for FormGroup, runtime add/remove controls
HTTP Client — Overviewreferences/http-client/overview.mdWhat HttpClient provides, feature summary
HTTP Client — Setupreferences/http-client/setup.mdprovideHttpClient, withFetch, withInterceptors, withInterceptorsFromDi, withRequestsMadeViaParent, withJsonpSupport, XSRF options, NgModule equivalents
HTTP Client — Making Requestsreferences/http-client/making-requests.mdGET/POST/PUT/DELETE, typed responses, responseType, params, headers, observe, progress events, error handling, timeouts, advanced fetch options (cache/priority/mode/credentials/redirect/referrer/integrity), cold Observables, best practices
HTTP Client — httpResourcereferences/http-client/http-resource.mdhttpResource() reactive wrapper, signal-based status/response, response types, Zod/Valibot parse option, testing
HTTP Client — Interceptorsreferences/http-client/interceptors.mdFunctional interceptors, withInterceptors, response interception, cloning requests, inject() in interceptors, HttpContextToken, synthetic responses, redirect info, DI-based interceptors
HTTP Client — Testingreferences/http-client/testing.mdprovideHttpClientTesting, HttpTestingController, expectOne/match/expectNone, flushing, error testing, testing interceptors
Server-Side & Hybrid Rendering — Overviewreferences/ssr-hydration/overview.mdSummary of SSR/SSG/CSR strategies and guide links
Server-Side & Hybrid Rendering — SSRreferences/ssr-hydration/ssr.mdng new --ssr, ng add @angular/ssr, RenderMode, server routing, parameterized prerendering, fallback strategies, headers/status codes, server-compatible components, DOCUMENT token, REQUEST/RESPONSE_INIT, HttpClient transfer cache, Node.js/non-Node.js server config
Server-Side & Hybrid Rendering — Hydrationreferences/ssr-hydration/hydration.mdprovideClientHydration, event replay (withEventReplay), DOM constraints, ngSkipHydration, i18n hydration, app stability, third-party library issues
Server-Side & Hybrid Rendering — Incremental Hydrationreferences/ssr-hydration/incremental-hydration.mdwithIncrementalHydration, hydrate triggers (on idle/viewport/interaction/hover/immediate/timer, when, never), nested blocks, @placeholder requirements
Testing — Overviewreferences/testing/overview.mdng test, Jasmine/Karma setup, CLI config, karma.conf.js, CI testing with ChromeHeadless
Testing — Code Coveragereferences/testing/code-coverage.md--code-coverage, coverage reports, enforcing minimums with karma.conf.js check property
Testing — Servicesreferences/testing/services.mdTesting services with/without TestBed, spies, TestBed.inject(), fakeAsync/tick, waitForAsync, HttpClientTestingModule, HttpTestingController
Testing — Components Basicsreferences/testing/components-basics.mdComponentFixture, createComponent(), detectChanges(), nativeElement, DebugElement, By.css()
Testing — Components Scenariosreferences/testing/components-scenarios.mdComponent binding, auto change detection, dispatchEvent(), external templates, service dependencies, fakeAsync, nested components, overrideComponent, page objects, waitForAsync
Testing — Attribute Directivesreferences/testing/attribute-directives.mdTest component pattern, By.directive(), :not selector, injector access, DebugElement.properties/styles/providerTokens
Testing — Pipesreferences/testing/pipes.mdIsolated pipe tests (no TestBed needed), DOM tests that verify pipe integration in templates
i18n — Overviewreferences/i18n/overview.mdi18n vs l10n concepts, localization workflow summary, what the full i18n pipeline looks like
i18n — Add Packagereferences/i18n/add-package.mdng add @angular/localize, --use-at-runtime, effect on package.json and tsconfig
i18n — Locale IDsreferences/i18n/locale-id.mdUnicode locale ID format, BCP 47, CLDR, setting sourceLocale in angular.json
i18n — Format Datareferences/i18n/format-data-locale.mdDatePipe, CurrencyPipe, DecimalPipe, PercentPipe, LOCALE_ID, overriding locale per-pipe
i18n — Prepare Componentreferences/i18n/prepare.mdi18n attribute, i18n-{attr}, $localize, metadata format meaning|description@@id, ICU plural/select/nested expressions
i18n — Translation Filesreferences/i18n/translation-files.mdng extract-i18n, output formats (XLIFF/JSON/ARB/XMB), creating per-locale files, XLIFF <trans-unit> structure, translating plurals/select/nested
i18n — Mergereferences/i18n/merge.md"localize" option in angular.json, ng build --localize, locale-specific configs, ng serve single-locale limit, i18nMissingTranslation warning levels
i18n — Deployreferences/i18n/deploy.mdSubdirectory per locale, subPath, Accept-Language header detection, Nginx and Apache config examples, SSR auto-redirect
i18n — Global Variantsreferences/i18n/import-global-variants.md@angular/common/locales/global/*, manual import in main.ts, when automatic vs manual import applies
i18n — Custom IDsreferences/i18n/manage-marked-text.md@@ prefix for stable IDs, trade-offs vs auto-generated IDs, uniqueness requirement
i18n — Example Appreferences/i18n/example.mdFull working example with fr-CA/en-US, complete app.component.html, app.component.ts, and messages.fr.xlf
Animations — Enter/Leavereferences/animations/overview.mdanimate.enter/animate.leave (v20 new API), AnimationCallbackEvent, animationComplete(), MAX_ANIMATION_TIMEOUT, testing, legacy compatibility
Animations — CSSreferences/animations/css.mdCSS keyframe animations, transitions, @starting-style, state/style toggling, auto-height, staggering, parallel animations, reordering lists, disabling animations, programmatic control via getAnimations()
Animations — Route Transitionsreferences/animations/route-transitions.mdView Transitions API, withViewTransitions, enableViewTransitions, CSS pseudo-elements ::view-transition-old/new, onViewTransitionCreated, skipTransition, global styles requirement
Drag and Dropreferences/drag-drop/overview.mdCDK cdkDrag/cdkDropList, reorderable lists, transfer between lists, cdkDropListGroup, copying items (cdkDropListHasAnchor), drag handles, custom preview/placeholder, axis locking, boundaries, delay, disable, orientation (vertical/horizontal/mixed), sort predicates, CDK_DRAG_CONFIG, scrollable containers

Best Practices

TopicFileWhen to read
Style Guidereferences/style-guide/style-guide.mdNaming conventions, project structure, inject() preference, component/directive patterns, protected/readonly usage, event handler naming, lifecycle interfaces
Securityreferences/best-practices/security.mdXSS prevention, sanitization contexts, DomSanitizer/bypassSecurityTrust*, CSP, Trusted Types, AOT compiler security, XSRF/CSRF, XSSI
Accessibilityreferences/best-practices/accessibility.mdARIA attribute binding (attr.), Angular Material/CDK a11y tools, native element patterns, focus management after navigation, ariaCurrentWhenActive, @defer accessibility, custom accessible components
Unhandled Errorsreferences/best-practices/error-handling.mdErrorHandler, what Angular catches vs. doesn't, async error handling, provideBrowserGlobalErrorListeners(), SSR error listeners, TestBed error rethrowing
Performance — Overviewreferences/best-practices/performance-overview.mdChange detection fundamentals, overview of performance subtopics and tools
Performance — Zone Pollutionreferences/best-practices/zone-pollution.mdZone.js pollution, runOutsideAngular, third-party lib init, re-entering the zone, NgZone.isInAngularZone()
Performance — Slow Computationsreferences/best-practices/slow-computations.mdProfiling with DevTools, pure pipes, memoization, avoiding repaints in lifecycle hooks
Performance — Skipping Subtreesreferences/best-practices/skipping-subtrees.mdOnPush strategy, change detection scenarios, markForCheck, object reference mutations
Performance — Chrome DevToolsreferences/best-practices/profiling-chrome-devtools.mdenableProfiling(), Angular custom track, color coding, bootstrap/component/CD profiling
Performance — Zonelessreferences/best-practices/zoneless.mdprovideZonelessChangeDetection, removing ZoneJS, PendingTasks, OnPush compatibility, testing with whenStable()
Keeping Up to Datereferences/updates/keeping-up-to-date.mdng update, ng version, Angular Update Guide, changelog, version support policy

Routing Logic

When a user asks about Angular, follow this decision tree:

  1. Identify the primary topic from the user's question
  2. Read the matching reference file(s) — multiple may apply (e.g., a form validation question may need both forms.md and components.md)
  3. For best practices questions, also read the relevant best practices file alongside the technical reference
  4. For architecture/design questions, read style-guide.md + the relevant technical reference(s)
  5. Answer using the reference content — cite Angular v20 patterns, APIs, and conventions

Common Multi-File Lookups

User's TaskRead These
Building a form componentforms/overview.md + forms/reactive-forms.md + components/inputs.md + components/outputs.md
Setting up authenticationrouting/route-guards.md + http-client/interceptors.md
SSR with hydrationssr-hydration/ssr.md + ssr-hydration/hydration.md + routing/rendering-strategies.md
Optimizing a slow appbest-practices/performance-overview.md + best-practices/zone-pollution.md + best-practices/slow-computations.md + best-practices/skipping-subtrees.md + signals/overview.md
Writing teststesting/overview.md + testing/services.md or testing/components-basics.md + testing/components-scenarios.md as needed
Accessible formsbest-practices/accessibility.md + forms/overview.md + forms/form-validation.md
Drag-and-drop listdrag-drop/overview.md + animations/css.md (if animated)
Lazy loadingtemplates/defer.md (@defer) + routing/define-routes.md (loadComponent)
Security reviewbest-practices/security.md + http-client/interceptors.md (XSRF)
i18n setupi18n/overview.md + i18n/add-package.md + i18n/prepare.md + i18n/translation-files.md + i18n/merge.md
i18n deploying/servingi18n/deploy.md + i18n/import-global-variants.md
i18n custom IDsi18n/manage-marked-text.md
Updating Angular versionupdates/keeping-up-to-date.md
Component lifecyclecomponents/lifecycle.md
Dynamic/programmatic renderingcomponents/programmatic-rendering.md
Two-way binding / model inputscomponents/inputs.md
Shadow DOM / style isolationcomponents/styling.md
Child queries / ViewChildcomponents/queries.md
Web Components / Angular Elementscomponents/elements.md

Important Notes

  • This skill targets Angular v20 — APIs and patterns are specific to this version
  • Angular v20 uses standalone components by default (no NgModules for new code)
  • The new animate.enter/animate.leave API replaces legacy @angular/animations for new components
  • Signals are the recommended reactivity model — prefer over plain properties and RxJS where appropriate
  • When in doubt between approaches, prefer: signals > computed > effect > RxJS

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.