Install
$ agentstack add skill-svssdeva-agentic-skills-astro-architecture ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
name: astro-architecture description: Technical architecture for Astro lead generation websites. Use when setting up new projects, configuring build tools, or establishing project foundations. For images use astro-images skill. For SEO use astro-seo skill. ---
Astro Architecture Skill
Technical foundation for high-performance, accessible, translation-ready lead gen sites.
Core Rules (Non-Negotiable)
- Astro static or hybrid only — No SPA routing, no client-side frameworks
- TypeScript strict mode — Always enabled, no
any - All text from i18n — No hardcoded strings in components
- Mobile-first CSS — Base styles for mobile,
md:and up for larger - Performance is build-time — No runtime optimization hacks
- One source of truth — All site data in
site.ts - Skill boundaries — Images via
astro-images, SEO viaastro-seo, forms viaastro-forms
Forbidden (STOP)
STOP and reassess if any of these occur:
- ❌ Client-side routing framework (React Router, etc.)
- ❌ UI component library (shadcn, DaisyUI, Chakra)
- ❌ Inline business logic in `` tags
- ❌ Hardcoded translations in components
- ❌ Images not using
astro-imagesskill - ❌ SEO markup not using
astro-seoskill - ❌ Missing required pages (404, Privacy Policy)
- ❌
client:loadwithout explicit justification - ❌ External fonts via Google Fonts API (self-host instead)
- ❌ PageSpeed score below 90
Tech Stack
| Layer | Technology | |-------|------------| | Framework | Astro (latest stable) | | Styling | Tailwind CSS (latest stable) | | Language | TypeScript (strict) | | Deploy | Cloudflare Pages | | Forms | astro-forms skill | | Calculator | lead-gen-calculator skill | | Images | astro-images skill | | SEO | astro-seo skill | | UX | astro-ux skill |
Performance Targets
| Metric | Target | FAIL if | |--------|--------|---------| | PageSpeed (mobile) | ≥ 95 | 1.5s | | Load time (mobile) | 1.9s | | LCP | 3s | | CLS | 0.25 | | Total JS | 100KB |
Browser Compatibility
Must work on:
- Chrome, Firefox, Safari, Edge, Opera, Brave
- iOS Safari (all versions), Android Chrome, Samsung Internet
- Old devices: iOS 12+, Android 7+
FAIL if site breaks on any of these.
File Structure
src/
├── config/
│ └── site.ts # ALL site data
├── i18n/
│ ├── ui.ts # UI strings
│ ├── en.json # English
│ └── [lang].json # Other languages
├── layouts/
│ ├── BaseLayout.astro # HTML shell
│ └── LandingLayout.astro
├── pages/
│ ├── index.astro
│ ├── thank-you.astro
│ ├── privacy-policy.astro # REQUIRED
│ ├── 404.astro # REQUIRED
│ ├── 410.astro # REQUIRED
│ └── [lang]/ # Translated pages
│ └── index.astro
├── components/
│ ├── sections/ # From astro-ux
│ ├── ui/
│ ├── layout/
│ │ ├── Header.astro
│ │ ├── Footer.astro # Must have business data
│ │ └── MobileMenu.astro
│ └── common/
│ └── LanguageSwitcher.astro
├── actions/ # From astro-forms
├── lib/
│ ├── i18n.ts # Translation helpers
│ └── gtm.ts # GTM/GA4 helpers
├── styles/
│ └── global.css
└── assets/
├── fonts/ # Self-hosted fonts
└── images/
Central Config
// src/config/site.ts
export const site = {
name: "Business Name",
phone: "+44 XXX XXX XXXX",
email: "info@example.com",
address: "123 Street, City, Postcode",
colors: {
primary: "#1C202F",
secondary: "#E5F2FF",
accent: "#FF6B35",
},
defaultLocale: 'en',
locales: ['en', 'hu', 'es'] as const,
gtm: {
id: "GTM-XXXXXXX",
cookieYesId: "XXXXXXXX",
},
social: {
google: { rating: 4.9, count: 270 },
},
};
References
Required (Always Read)
- [pages.md](references/pages.md) — 404, 410, Privacy Policy (MUST exist)
- [a11y.md](references/a11y.md) — Accessibility requirements
- [config.md](references/config.md) — Config file templates
Required if Multi-Language
- [i18n.md](references/i18n.md) — Translation setup, hreflang
Conditional
- [gtm.md](references/gtm.md) — Only if GTM/GA4 tracking enabled
- [fonts.md](references/fonts.md) — Only if custom fonts used
Definition of Done
Architecture is complete when ALL are true:
- [ ] All pages render without JavaScript enabled
- [ ] PageSpeed ≥ 90 on both mobile and desktop
- [ ] No CLS on page load (test with throttled connection)
- [ ] All visible text comes from i18n dictionaries
- [ ] Required pages exist: 404, Privacy Policy
- [ ] Footer contains business data (name, address, phone, email)
- [ ] hreflang tags present if multi-language
- [ ] GTM fires correctly (test in GTM Preview)
- [ ] Cookie consent blocks tracking until accepted
- [ ] Site works on iOS Safari and Android Chrome
- [ ] Keyboard navigation works throughout
- [ ] Skip link present and functional
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: svssdeva
- Source: svssdeva/agentic-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.