ã2026幎çãAstroã®å§ãæ¹ â ãŒãJSã§çéWebãµã€ããäœãå®å šã¬ã€ã
æè¿ãAstroãã£ãŠããèããã ãã©ãã©ããããã¬ãŒã ã¯ãŒã¯ãªã®ïŒ
Astroã¯Webãµã€ããäœãããã®ãã¬ãŒã ã¯ãŒã¯ã§ãæå€§ã®ç¹åŸŽã¯ãããã©ã«ãã§JavaScriptããŒãã«ãããããšãªãã ãæ®éã®ãã¬ãŒã ã¯ãŒã¯ã¯ããŒãžå šäœãJavaScriptã§åãããã©ãAstroã¯éçãªHTMLãåºåããŠãå¿ èŠãªéšåã ãJavaScriptãèªã¿èŸŒããã ãã衚瀺é床ããã¡ããã¡ãéããã ãã
JavaScriptãŒããªã®ã«ã¡ãããšãããµã€ããäœããã®ïŒ
ãã¡ããïŒããã°ãããã¥ã¡ã³ããµã€ããããŒããã©ãªãªã¿ãããªã³ã³ãã³ãäžå¿ã®ãµã€ããªãJavaScriptããªããŠãååãªãã ããã¿ã³ã®ã¯ãªãã¯ããã©ãŒã ã¿ãããªã€ã³ã¿ã©ã¯ãã£ããªéšåã ããããšã§èª¬æãããIslands Architectureãã§éšåçã«JSãè¶³ãããã
ãããžã§ã¯ããå§ããã«ã¯ã©ãããã°ããã®ïŒ
ã¿ãŒããã«ã§ãnpm create astro@latestããå®è¡ããã ãã ãã察話圢åŒã§ãããžã§ã¯ãåããã³ãã¬ãŒããéžã¹ããã ãTypeScriptã®èšå®ãGitã®åæåããŸãšããŠãã£ãŠããããäœæãçµãã£ãããnpm run devãã§éçºãµãŒããŒãç«ã¡äžãããã
ããŒãžãã¬ã€ã¢ãŠãã¯ã©ããã£ãŠäœãã®ïŒ
srcãã©ã«ãã®äžã«pagesãã£ã¬ã¯ããªããã£ãŠãããã«.astroãã¡ã€ã«ã眮ããšãã®ãŸãŸURLã«ãªããã ãããšãã°pages/about.astroãäœãã° /about ã§ã¢ã¯ã»ã¹ã§ãããã¬ã€ã¢ãŠãã¯layoutsãã£ã¬ã¯ããªã«å ±éãã³ãã¬ãŒããäœã£ãŠãåããŒãžããèªã¿èŸŒã圢ã ãã.astroãã¡ã€ã«ã¯äžéšã«JavaScriptãæžãããã³ããã¿ãŒéšåãšãäžéšã«HTMLãã³ãã¬ãŒããæžãéšåã«åãããŠãããã
ããã°èšäºã¿ãããªã³ã³ãã³ãããããã管çããã«ã¯ã©ãããã®ããªïŒ
ããã§æŽ»èºããã®ããContent Collectionsãã ããsrc/contentãã©ã«ãã«Markdownãã¡ã€ã«ããŸãšããŠçœ®ããŠãã¹ããŒãã§åãå®çŸ©ã§ãããã ãããšãã°blogã³ã¬ã¯ã·ã§ã³ãäœãã°ãã¿ã€ãã«ãæ¥ä»ã®ããªããŒã·ã§ã³ãèªåã§ãã£ãŠããããåå®å šã«ã³ã³ãã³ããæ±ãããããèšäºãå¢ããŠã管çãããããã ãã
ãIslands Architectureãã£ãŠäœãªã®ïŒååããã£ããããã©é£ãããâŠ
éçãªHTMLã®ãæµ·ãã®äžã«ãã€ã³ã¿ã©ã¯ãã£ããªã³ã³ããŒãã³ãã®ãå³¶ïŒIslandïŒããæµ®ããã§ããã€ã¡ãŒãžã ããããšãã°ããŒãžå šäœã¯éçHTMLã ãã©ãæ€çŽ¢ããŒã ãReactã³ã³ããŒãã³ãã«ãããã¿ãããªããšãã§ãããã ãã³ã³ããŒãã³ãã«client:loadãclient:visibleãšãã£ããã£ã¬ã¯ãã£ããä»ãããšããã®éšåã ããã©ãŠã¶ã§JavaScriptãå®è¡ããããã
ãããAstroã®ããããšããã§ãReactã»Vueã»Svelteã»Solidã»Preactãªã©è€æ°ã®UIãã¬ãŒã ã¯ãŒã¯ãåããããžã§ã¯ãå ã§æ··åšã§ãããã ãã€ã³ãã°ã¬ãŒã·ã§ã³ã远å ããã ãã§äœ¿ããããã«ãªããæ¢åã®Reactã³ã³ããŒãã³ãããã®ãŸãŸæã£ãŠããŠãAstroãããžã§ã¯ãã«çµã¿èŸŒãããšãã§ãããã
éçãµã€ãã ããããªããŠãµãŒããŒãµã€ãã¬ã³ããªã³ã°ãã§ããã®ïŒ
ã§ãããïŒAstroã¯ããã©ã«ãã§ã¯éçãµã€ãçæãã€ãŸãSSGã¢ãŒãã§ãã«ãæã«HTMLãçæãããã ãã©ãèšå®ã§SSRã¢ãŒãã«åãæ¿ãããããã ãSSRãªããªã¯ãšã¹ãããšã«ãµãŒããŒã§ããŒãžãçæã§ããããããŠãŒã¶ãŒããšã«éãå 容ãè¿ãããå Žåã«äŸ¿å©ã ããããŒãžåäœã§SSGãšSSRãæ··åšãããããšãã§ãããã
äœã£ããµã€ãããããã€ããã«ã¯ã©ããããããã®ïŒ
SSGã¢ãŒããªãCloudflare PagesãVercelãNetlifyãªã©å€§äœã©ãã§ããããã€ã§ããããGitHubãªããžããªã飿ºããã ãã§èªåãããã€ãçµãããSSRã¢ãŒãã®å Žåã¯ã¢ããã¿ãŒãå¿ èŠã§ãããšãã°Cloudflare Workersãªãå°çšã®ã¢ããã¿ãŒãã€ã³ã¹ããŒã«ããŠèšå®ãã¡ã€ã«ã«è¿œå ããã ãã ãã
Astroã£ãŠã©ããªãµã€ãã«åããŠããã®ããªïŒ
ã³ã³ãã³ãäžå¿ã®ãµã€ããæãåŸæã ããããã°ãããã¥ã¡ã³ããµã€ããããŒã±ãã£ã³ã°ããŒãžãããŒããã©ãªãªãªããã¯Astroã®åŒ·ã¿ãæå€§éã«æŽ»ããããéã«ããã·ã¥ããŒããSNSã¿ããã«ç»é¢å šäœãã€ã³ã¿ã©ã¯ãã£ããªã¢ããªã«ã¯Next.jsãNuxtã®æ¹ãåããŠãããã驿驿ã§äœ¿ãåããã®ã倧äºã ãã
ãªãã»ã©ããŸãã¯ããã°ãã詊ããŠã¿ããïŒ
ããéžæã ãïŒAstroã®å ¬åŒããã¥ã¡ã³ãã«ããã°ãã¥ãŒããªã¢ã«ãããããããããäžéãããã®ãããããã ããView Transitionsã§ããŒãžé·ç§»ã¢ãã¡ãŒã·ã§ã³ãä»ããããç»åæé©åãRSSãã£ãŒãçæããã«ãã€ã³ã§å¯Ÿå¿ããŠãããããæå€ãšå°ãªãã³ãŒãã§æ¬æ Œçãªããã°ãäœãããã