angular-ssr 是做什麼的?
使用 @angular/ssr 在 Angular v20+ 中實作伺服器端渲染 (SSR) 與水合 (Hydration)。適用於 SSR 設定、水合策略、預渲染靜態頁面以及處理僅瀏覽器可用的 API。觸發時機包括:SSR 配置、修復水合不匹配、預渲染路由或讓程式碼與 SSR 相容。
使用 @angular/ssr 在 Angular v20+ 中實作伺服器端渲染 (SSR) 與水合 (Hydration)。適用於 SSR 設定、水合策略、預渲染靜態頁面以及處理僅瀏覽器可用的 API。
此技能專注於 Angular v20 及以上版本的伺服器端渲染 (SSR) 與水合實作,基於官方 @angular/ssr 套件。開發者可用於設定 SSR 專案、選擇水合策略(如完整水合或部分水合)、預渲染靜態路由以提升 SEO 與載入速度,以及處理僅在瀏覽器端執行的 API(如 localStorage、window 物件)。它適用於 Angular CLI 與 Nx 工作區,能自動偵測 SSR 配置問題、修復水合不匹配錯誤(例如因第三方套件或 DOM 差異導致的警告),並協助將現有程式碼轉換為 SSR 相容形式。該技能也提供自動化預渲染路由配置、靜態頁面生成與伺服器端請求處理(如使用 Angular 的 TransferState 進行資料傳輸)。對於希望提升 Angular 應用效能與搜尋引擎友善度的開發者來說,這是一個必備工具。
npx skills add https://github.com/analogjs/angular-skills/tree/main/skills/angular-ssrInstalled? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →
使用 @angular/ssr 在 Angular v20+ 中實作伺服器端渲染 (SSR) 與水合 (Hydration)。適用於 SSR 設定、水合策略、預渲染靜態頁面以及處理僅瀏覽器可用的 API。觸發時機包括:SSR 配置、修復水合不匹配、預渲染路由或讓程式碼與 SSR 相容。
This repo contains 9 individual skills — each has its own dedicated page.
Create modern Angular standalone components following v20+ best practices. Use for building UI components with signal-based inputs/outputs, OnPush change detection, host bindings, content projection, and lifecycle hooks. Triggers on component creation, refactoring class-based inputs to signals, adding host bindings, or implementing accessible interactive components.
Implement dependency injection in Angular v20+ using inject(), injection tokens, and provider configuration. Use for service architecture, providing dependencies at different levels, creating injectable tokens, and managing singleton vs scoped services. Triggers on service creation, configuring providers, using injection tokens, or understanding DI hierarchy.
Create custom directives in Angular v20+ for DOM manipulation and behavior extension. Use for attribute directives that modify element behavior/appearance, structural directives for portals/overlays, and host directives for composition. Triggers on creating reusable DOM behaviors, extending element functionality, or composing behaviors across components. Note - use native @if/@for/@switch for control flow, not custom structural directives.
Build signal-based forms in Angular v21+ using the new Signal Forms API. Use for form creation with automatic two-way binding, schema-based validation, field state management, and dynamic forms. Triggers on form implementation, adding validation, creating multi-step forms, or building forms with conditional fields. Signal Forms are experimental but recommended for new Angular projects. Don't use for template-driven forms without signals or third-party form libraries like Formly or ngx-formly.
Implement HTTP data fetching in Angular v20+ using resource(), httpResource(), and HttpClient. Use for API calls, data loading with signals, request/response handling, and interceptors. Triggers on data fetching, API integration, loading states, error handling, or converting Observable-based HTTP to signal-based patterns.
Implement routing in Angular v20+ applications with lazy loading, functional guards, resolvers, and route parameters. Use for navigation setup, protected routes, route-based data loading, and nested routing. Triggers on route configuration, adding authentication guards, implementing lazy loading, or reading route parameters with signals.
Implement signal-based reactive state management in Angular v20+. Use for creating reactive state with signal(), derived state with computed(), dependent state with linkedSignal(), and side effects with effect(). Triggers on state management questions, converting from BehaviorSubject/Observable patterns to signals, or implementing reactive data flows.
Write unit and integration tests for Angular v20+ applications using Vitest or Jasmine with TestBed and modern testing patterns. Use for testing components with signals, OnPush change detection, services with inject(), and HTTP interactions. Triggers on test creation, testing signal-based components, mocking dependencies, or setting up test infrastructure. Don't use for E2E testing with Cypress or Playwright, or for testing non-Angular JavaScript/TypeScript code.
Use Angular CLI and development tools effectively in Angular v20+ projects. Use for project setup, code generation, building, testing, and configuration. Triggers on creating new projects, generating components/services/modules, configuring builds, running tests, or optimizing production builds. Don't use for Nx workspace commands, custom Webpack configurations, or non-Angular CLI build systems like Vite standalone or esbuild direct usage.
Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.
Control Eight Sleep pods (status, temperature, alarms, schedules).
BluOS CLI (blu) for discovery, playback, grouping, and volume.
Create, search, and manage Bear notes via grizzly CLI.
Capture frames or clips from RTSP/ONVIF cameras.
Search GIF providers with CLI/TUI, download results, and extract stills/sheets.