Claude-skill-registry analogjs-development
Develop with Analogjs 2.x file-based routing, markdown content management, and SSR/SSG configuration. Use when creating *.page.ts files, contentFilesResource, routeMeta, and prerender settings.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/analogjs-development" ~/.claude/skills/majiayu000-claude-skill-registry-analogjs-development && rm -rf "$T"
manifest:
skills/data/analogjs-development/SKILL.mdsource content
Analogjs Development
Development guide for Analogjs 2.x framework with file-based routing and content management.
When to Use This Skill
- Creating new pages (*.page.ts)
- Setting up dynamic routes ([param].page.ts)
- Loading and displaying markdown content
- Configuring SSR/SSG (prerender)
- Creating API routes (server/routes/)
When NOT to use:
- Creating non-page Angular components →
angular-v21-development - Styling only →
tailwindcss-v4-styling - UI/UX design application →
material-design-3-expressive
Core Principles
- File-Based Routing: Routes are defined by file location and naming
- Default Export: Page components must use default export
- Content Resources API: Use
andinjectContentFiles()
for markdowninjectContent() - requestContextInterceptor: Place as the last interceptor in HttpClient configuration
- Project Structure:
src/ ├── app/pages/ # File-based routing │ ├── index.page.ts # / route │ ├── about/ │ │ └── index.page.ts # /about route │ └── blog/ │ ├── index.page.ts # /blog route │ └── [slug].page.ts # /blog/:slug dynamic route ├── content/ # Markdown content │ └── blog/ └── server/routes/ # API endpoints
Implementation Guidelines
Page Component
Key patterns for page components:
- File must end with
suffix.page.ts - Component must be default exported
- Can have accompanying
and.page.html
files.page.css
→ Details: Routing Patterns
Dynamic Routes
Dynamic route patterns:
- Use bracket syntax for parameter:
[slug].page.ts - Access parameter via
orinjectContent()ActivatedRoute - Prefer
for route params as inputswithComponentInputBinding()
→ Details: Routing Patterns
Content Management
Markdown content handling patterns:
- Use
for content listinjectContentFiles<T>() - Use
for single content by route paraminjectContent<T>() - Define
interface for content metadataPostAttributes - Configure
with markdown rendererprovideContent()
→ Details: Content Handling
Route Metadata
Route-level configuration patterns:
- Export
for route configurationrouteMeta - Set page title, meta tags, guards
- Configure SSR/SSG options per route
→ Details: Routing Patterns
SSR/SSG Configuration
Server-side rendering and static generation patterns:
- Configure
inprerender.routesvite.config.ts - Use
withcontentDir
for dynamic content routestransform - Set up
inprovideServerContext()main.server.ts
→ Details: Content Handling
API Routes
Server API route patterns:
- Create files in
src/server/routes/ - Use
from h3defineEventHandler() - File path becomes API endpoint
→ Details: Routing Patterns
Workflow
- Route Planning: Determine route type (static/dynamic/group)
- Create Page File: Create
with correct naming*.page.ts - Template Setup: Create template/style files if needed
- Content Connection: Set up markdown content loading if applicable
- Route Metadata: Configure
exportrouteMeta - Prerender Setup: Add route to prerender configuration for SSG
Related Skills
- angular-v21-development: For component internal implementation
- tailwindcss-v4-styling: For page styling
- material-design-3-expressive: For UI component application
Reference Documentation
For detailed patterns and code examples, see:
- Routing Patterns - File-based routing details
- Content Handling - Markdown content management