
WEBã¢ããªéçºã®ã¡ããšããèºããšãããããâVercelãšSupabaseãšGemini APIãšã§ãµã ãèŠåºããã§ãã«ãŒãã€ãã£ãŠã¿ã
ååãWEBã¢ããªãäœã£ãè©±ãæžããŸããã
ä»åã¯ãã©ããã£ãŠäœã£ãã®ããæžããŠã¿ãŸãã
ãŸãã¯ãéçºç°å¢ãªã©
ä»å䜿ã£ãã®ã¯ãGitHubãVercelãSupabaseãGemini APIã§ãã
Next.jsã§éçºããŸãã
ãªãããã¯ããã£ãœãã®ã§ããã®ç°å¢ã«ããŸããã
ãŸãã¯GitHubã®ã¢ã«ãŠã³ããäœããŸããç§ã®å Žåã¯ã以åã«äœã£ãã¢ã«ãŠã³ãããã£ãã®ã§ããã°ã€ã³ããã ãã§ãã
次ã«Vercelã®ã¢ã«ãŠã³ããäœããGitHubãšé£æºããŸãã
ãã¡ãã®èšäºãåèã«ããŸããã
æè¿ã¯ããããã£ãéçºç³»ã®æé ã調ã¹ããšãããGoogleã§æ€çŽ¢ããŠQiitaãZennã®èšäºãæ¢ããããnoteã®äžã§æ€çŽ¢ããããã«ãªããŸããã
åå¿è
åãã®èšäºã¯ãnoteã®æ¹ãæ¢ããããæ°ãããŸãã
ä»åã¯AIã䜿ãã®ã§ãGoogle AI Studioã§Gemini APIã䜿ããããã«ããŠãããŸãã
ãããŸã§ããã¹ãŠç¡ææ ã®ç¯å²ã§ãã
ãœãŒã¹ãæžããšãã£ã¿ãWebã§
ãœãŒã¹ã³ãŒããæžãäœæ¥ããWebäžã§å®çµãããããšã«ããŸããããããããšã€ã³ã¹ããŒã«ããã®ãé¿ããããã§ãã
ããã§ãGitHubãšé£æºããŠäœ¿ããCodespacesãå©çšããŸãã
ããã§ã¡ãã£ãšèºããã®ãããªããžããªãäœæããéã®èšå®ã§ãã
ãAdd READMEããONã«ããŠãããªããšãAIãæããŠãããæé ã§ã¯Codespacesã®ç»é¢ãéããŸããã§ããã
ãããAIã«èããŠè§£æ±ºããŸãã
ãŸãã¯ãHello World
å®çªã®ãHello Worldãã®äœãæ¹ãAIã«èããCodespacesã§ãœãŒã¹ãã¡ã€ã«ãäœæããŸããã
å ã»ã©ç޹ä»ããèšäºãåèã«Vercelãšé£æºããããšãå®éã«åãWebã¢ããªãã§ããŸããã
ãããããããã¹ãå ¥åæ¬ãšãã¿ã³ãçšæãããã¿ã³ãæŒããšå ¥åããæååãããã¹ããšãªã¢ã«è¡šç€ºãããã¢ããªãäœããŸããã
ãŸãã¯ãåºæ¬çãªåäœã®ç¢ºèªã§ãã
次ã¯Gemini APIã®åŒã³åºã
å°ããããã£ãœãã¢ããªã«ãªã£ãŠããŸãã
ããã¹ãå ¥åæ¬ã«å ¥åããæååãGemini APIã«æž¡ããè¿ã£ãŠããæååãããã¹ããšãªã¢ã«è¡šç€ºããŸãã
ããã§ã¡ãã£ãšèºããã®ã¯ãGeminiã®ã¢ãã«æå®ã§ãã
AIãæããŠãããã®ã¯ããªããã1.5-flashãã§ããã
ãããã3.5-flash-liteãã«å€æŽããã°ãããšåãããŸã§ã«ãå°ãæéãããããŸããã
ããã§ãAPIçµç±ã§Geminiã䜿ããããã«ãªããŸããã
ã¡ãã£ãšãããã£ãœãã¢ããªã«ãªã£ãŠããŸãã
ãã£ãšSupabaseãšã®æ¥ç¶
ããŒã¿ããŒã¹ããªãã®ç¶æ
ã§ããããã£ãœãWebã¢ããªãã§ããŸããã
ããã§ãããŒã¿ããŒã¹ãæ¥ç¶ããã°æ¬æ Œçãªã¢ããªã«ãªããŸãã
ããã§ãSupabaseã®ã¢ã«ãŠã³ããäœã£ãŠæ¥ç¶ããŠã¿ãŸãã
æåã«ç޹ä»ããèšäºãåèã«ãããšããããããªãã«ãµã¯ããšæ¥ç¶ã§ããŸããã
ç°å¢å€æ°ã®èšå®å Žæã§ã¡ãã£ãšèºããŸããããAIã«èããªãã察å¿ããŸããã
ã²ãšãŸããWebã¢ããªãšããŠåããšãããŸã§å®æã§ãã
å ¬éãŸã§ã«ã¯ããŸã ãããããš
åãããã«ã¯ãªã£ããã®ã®ãèŠãç®ã¯ãŸã å ¬éã§ããç¶æ ã§ã¯ãããŸããã
ã¢ããªåã¯ä»®ã®ãŸãŸã ãã説æããªãããåçš®ãªã³ã¯ã玹ä»ããããâŠâŠã
ããã§èºããã®ãããããããªã³ã¯ã«ãŒãã§ãã
äŸãã°ããããªãµãŒãã¹ããããŸãã
ãã®ãµã€ãã§HTMLãçæããŸããã
ããããããã§ãã¡ãã£ãšèºããŸãã
Next.jsã§ã¯ãçæããHTMLããã®ãŸãŸã§ã¯äœ¿ããŸãããNext.jsã®æžãæ¹ã«åãããŠä¿®æ£ããå¿
èŠããããŸãã
AIã«èããŠè§£æ±ºããŸãããããã£ããããªããšããã¯ããœãŒã¹ã³ãŒããçŽæ¥ç·šéããŠåŸ®èª¿æŽããŸããã
ããããŠããªããšãå ¬éã«ããã€ããŸããã
å ¬éåŸã®ããããããã®ïŒ
å
¬éããç¿æãããŒãžã¿ã€ãã«ãæªèšå®ã ã£ãããšã«æ°ã¥ããŸããã
ããã©ã«ãã®ãŸãŸã§ããfaviconãããã©ã«ãã®ãŸãŸã§ããã
ãã£ããAIã«èããŠä¿®æ£ããŸãã
GitHubåŽã®ãœãŒã¹ã³ãŒããä¿®æ£ããŠã³ãããããã°ãèªåçã«Vercelãšé£æºããŠåãããã€ãããŸãã
ããã¯ãéåžžã«äŸ¿å©ã§ãã
å ¬éåŸã®ããããããã®ïŒ
Supabaseã®ããã·ã¥ããŒããèŠãŠãããšãã»ãã¥ãªãã£é¢é£ã®èšå®ã«åé¡ãããããšã«æ°ã¥ããŸããã
AIã«èããŠèšå®ã倿Žããããšããã®ã§ãããèšå®æ¹æ³ãããåãããŸããã
ãã®çµæãå
¬éäžã«ãããããããæ°åéã§ããWebã¢ããªãåããªããªã£ãŠããŸããŸããã
å ¬éåŸã®èšå®å€æŽã¯ãæ éã«ãããªããšãããŸãããã
å ¬éåŸã®ããããããã®ïŒ
Supabaseã®ããã·ã¥ããŒãã§Table EditorãéããŠãããšãã©ãã©ããLogs Queryãã®äœ¿çšéãå¢ããŠãããŸãã
ãããŠãŠãããã·ã¥ããŒãã§ããŒã¿ããŒã¹ãžã®æžã蟌ã¿ç¶æ³ã確èªããã®ããããŸããã
代ããã«ãGitHub Actionsã®ã¯ãŒã¯ãããŒã«ãããŒã¿ããŒã¹ã®ã¬ã³ãŒãç·æ°ãååŸããYAMLãã¡ã€ã«ãç»é²ããŸããã
å¿ èŠãªãšãã«æåã§å®è¡ããã°ãã¬ã³ãŒãæ°ã確èªã§ããŸãããããªããããã·ã¥ããŒããéããã«æžã¿ãŸãã
ãŸããWebãµã€ããžã®ã¢ã¯ã»ã¹ç¶æ³ã«ã€ããŠã¯ãVercel Analyticsãæå¹ã«ããŠç¢ºèªããããã«ããŸããã
å®éã«ã¯ãGoogle Analyticsãlayout.tsxã«çµã¿èŸŒã¿ããªã¢ã«ã¿ã€ã ã®ã¢ã¯ã»ã¹ç¶æ³ã¯ãäž»ã«Analyticsã§ç¢ºèªããŠããŸãã
æ°æ¥åŸã®èºã
æ°æ¥åŸãã³ãŒããå°ã倿ŽããŠããŒã«ã«ç°å¢ã§ç¢ºèªããããšãããšããããªããåããŸããã
調ã¹ãŠã¿ããšã2026幎9æ30æ¥ã®ã¢ããããŒãã®åœ±é¿ã§ãnext.config.tsã®ä¿®æ£ãå¿ èŠã«ãªã£ãŠããŸããã
ãã®èºãããAIã«èããšå¯ŸåŠæ¹æ³ãåãã£ãã®ã§å©ãããŸããã
ãããããšããAIã«èããšãµã¯ããšå¯ŸåŠæ¹æ³ããããã®ã¯äŸ¿å©ã§ããã
ãšããäºã§ããã²äœ¿ã£ãŠèŠãŠ
ããµã ãèŠåºãããã¯ãŒãã§ãã«ãŒ
https://www.nariten.com/thumbchecker

ãã²ã¢ã¯ã»ã¹ããŠäœ¿ã£ãŠèŠãŠãã ããã
ç¡æã§ãç»é²äžèŠã§ãã
䜿ã£ãŠã¿ãææ³ããæèŠãããã²ãã®èšäºã®ã³ã¡ã³ãæ¬ã«ãå¯ããã ããã
ãã®èšäºãžã®ã¹ãããã©ããŒããéçºã®å±ã¿ã«ãªããŸãã
ð αçã®æ¡ç¹ããžãã¯ã詊ããŠã¿ãïŒãµã ãèŠåºããã¯ãŒãã§ãã«ãŒïŒ
çããã®ãæèŠãšå¿æŽãããããããé¡ãããããŸãïŒ