ã¯ããã«
ãã®èšäºã§ã¯ãå®åæªçµéšããç¬åŠã§äœæããwebã¢ããªãKickoff Reminderãã«ã€ããŠçŽ¹ä»ããŠããŸãã
ãŸããwebã¢ããªãäœæããã«ããã£ãŠã工倫ããç¹ãåŠç¿ããã»ã¹ãªã©ãæžãããŠããã ããŠãããŸããè¯ããã°ãäžèªãã ããã
äœæè
- 1999幎çãŸã
- 倧åŠãŸã§ãµãã«ãŒéš
- ããªãŒã¿ãŒäžã«webãšã³ãžãã¢ã«èå³ããã€
- 2023幎ããç¬åŠã§webã¢ããªéçºãéå§
- çŸåšããã¯ãšã³ããšã³ãžãã¢ãç®æããŠå°±è·æŽ»åäž
- X(Twtter) : https://twitter.com/houdin111
ç®æ¬¡
- äœæããã¢ããªçŽ¹ä»
- ãã®ã¢ããªãäœã£ãçç±
- 䜿çšæè¡
- åºæ¬èšèš
- äœæããå®æãŸã§ããµãããã£ãŠ
- ç¬åŠã§ã®åŠç¿ããã»ã¹
- åèã«ãããŠããã ãããµã€ããèšäºã®çŽ¹ä»
- ãããã«
1. äœæããã¢ããªçŽ¹ä»
æŠèŠ
å称 : Kickoff Reminder
ãKickoff Reminderãã¯ããµãã«ãŒãã¡ã³ã«åããè©Šåéç¥ãµãŒãã¹ã§ãã
ãŠãŒã¶ãŒã®å¥œããªããŒã ããæ°ã«å ¥ãããã ãã§ãè©Šåéç¥ãLINEãã¡ãŒã«ã§åãåãããšãã§ããŸãã
URL : https://kickoffreminder.com
GitHub : https://github.com/sprout90210/KickoffReminder
äž»ãªæ©èœ
- ããŒã ã倧äŒæ å ±ã®è©³çŽ°è¡šç€º
- èªåããŒã¿æŽæ°
- è©Šåéç¥
- ããŒã ã®ãæ°ã«å ¥ãç»é²ã»è§£é€
- èªèšŒæ©èœïŒç»é²ããã°ã€ã³ããã¹ã¯ãŒããªã»ãããªã©ïŒ
- LINEãã°ã€ã³ã«ããå€éšèªèšŒ
ç»é¢ã€ã¡ãŒãž
â»ãã¶ã€ã³ãå€æŽãããŠããå ŽåããããŸãã
ããŒã ,ã³ã³ããã£ã·ã§ã³è©³çŽ°ç»é¢
ãæ°ã«å ¥ãããŒã 管ç
éç¥èšå®,éç¥äºå®ã®è©Šå
èªèšŒç»é¢
ã¬ã¹ãã³ã·ã察å¿
éç¥ã¡ãŒã«
â»ãã®ãããªã¡ãŒã«ãå±ããŸãã
2. ãã®ã¢ããªãäœã£ãçç±
ãªããã®ã¢ããªãäœæããã®ã
ç§ã¯å€§åŠãŸã§ãµãã«ãŒãããŠããäºãããããµãã«ãŒã®è©ŠåãèŠãã®ã奜ãã§ãããç¹ã«æµ·å€ãµãã«ãŒã¯ã¬ãã«ãé«ããæ¥æ¬äººéžæãå€ãæå±ããŠããããšãããèªåãå«ãæ¥æ¬ã§ãå€ãã®èŠèŽè ãããŸãã
ãããæµ·å€ãµãã«ãŒãèŠèŽããéã«ä»¥äžã®ãããªåé¡ããããŸããã
- æå·®ã®é¢ä¿äžãæ·±å€ãæ©æã«è©Šåãè¡ããããããå¿ããŠããŸãããšãå€ã
- è©Šåãããã調ã¹ãããã«ãæ¯åæéãããã
- è©Šåã®ãã³ã«ãªãã€ã³ããŒãã»ããããã®ãé¢å
ããã§ãèªåã®å¥œããªããŒã ã®è©Šåããããã³ã«èªåçã«éç¥ããŠããããµãŒãã¹ã欲ãããšèãããã®Webã¢ããªãäœæããŸããã
3. 䜿çšæè¡
â»ããŒãžã§ã³ã¯æŽæ°ãããŠããå ŽåããããŸãã
- ããã³ããšã³ã
- Vue 3.3.4
- Vuex 4.1.0
- Vue Router 4.2.4
- Tailwind CSS
- ããã¯ãšã³ã
- PHP 8.2.17
- Laravel 9.52.16
- AWS
- VPC
- EC2
- SES
- S3
- RDS (MySQL)
- Route 53
- ãã®ä»
- LINE API
- football-data.org API
- Docker
- GitHub Actions
- Redis
- nginx
- Postman
- phpMyAdmin
äž»ãªæè¡éžå®çç±
-
Laravel(PHP)
ããã¯ãšã³ãã«ã¯ãLaravel(PHP)ãæ¡çšããŸããã
ããã¯ãã»ãã¥ãªãã£ããã¹ããããŒã¿ããŒã¹ã®æäœãªã©ãWebã¢ããªéçºã«å¿ èŠãªå€ãã®æ©èœãç°¡åã«å©çšã§ããããã§ãã
ãŸããLaravelã¯åŠç¿ãªãœãŒã¹ãå€ãä»ã®ãã¬ãŒã ã¯ãŒã¯ããåŠã³ãããç¹ã決ãæã«ãªããŸããã -
Vue.js
ãŸããè¿ éãªããŒãžé·ç§»ãå®çŸããããã«ãSPAãæ¡çšããããšã«ããŸããã
ãã®ããã§ããã³ããšã³ãã«Vue.jsãéžå®ããçç±ã¯ãååŠè ã«ãæ±ãããããå°å ¥ãæ軜ã§éçºãçŽ æ©ãå§ããããããã§ãã -
AWS
AWSãã€ã³ãã©ã«éžå®ããçç±ã¯ãã¹ã±ãŒã©ããªãã£ãå€çš®å€æ§ãªãµãŒãã¹ãªã©ãã¢ããªã®ããŒãºã«å¿ããŠæè»ã«å¯Ÿå¿ã§ããã¯ã©ãŠããµãŒãã¹ã ããã§ãã
4. åºæ¬èšèš
ERå³
AWSæ§æå³
5. äœæããå®æãŸã§ããµãããã£ãŠ
工倫ããããš
å€éšAPIã®åŒã³åºãå¶éãžã®å¯Ÿç
å€éšAPIã®åŒã³åºãå¶éãžã®å¯ŸçãšããŠãcronãžã§ããçšããŠå®æçã«ããŒã¿ãååŸããããŒã¿ããŒã¹ã«ä¿åããã¢ãããŒããæ¡çšããŸããã
ããã«ããããŠãŒã¶ãŒãã¢ã¯ã»ã¹ãããã³ã«APIãå©ãããšããªããªããåŒã³åºãåæ°ãäžå®ã«æããããšãå¯èœã«ãªããŸããã
ãŸããããŒã åãªã©ã®è±èªã§æäŸãããããŒã¿ãæ¥æ¬èªã«ããŠãŠãŒã¶ãŒã«åãããããæäŸããããšãå¯èœã«ãªããŸããã
åå©çšæ§
ã¢ããªã«çµ±äžæãæããããã£ãã®ã§ãã§ããã ãåå©çšå¯èœãªã³ã³ããŒãã³ããCSSãæèããŸããã
èŠåŽããããš
AWS
ã€ã³ãã©åšãã«äžçªèŠåŽããæ°ãããŸãã
ã¡ãŒã«ãéãããã®SESãç»åä¿åçšã®S3ãªã©ãããããã®ãµãŒãã¹ã®äœ¿ãæ¹ãèŠããå¿
èŠããã£ãå°è±¡ã§ããããã®ãããã§ãã³ãŒãã£ã³ã°ä»¥å€ã®ç¥èãã€ãããšæããŸããã
å€éšAPI
ã¢ããªã±ãŒã·ã§ã³ã®æ©èœãå®çŸããããã«ãã©ã®ããŒã¿ãååŸãã¹ããæ€èšããéçšã¯ãäºæ³ä»¥äžã«æéãããããŸããã
ãŸããããŒã¿ã®å
容ã«ãã£ãŠè¡šç€ºéšåãå€ãããããå¿
èŠããã£ããããAPIããè¿ã£ãŠããããŒã¿ã®ãã¿ãŒã³ã網çŸ
ããå¿
èŠããããŸããã
ïŒstatusãTIMEDãªãè©Šåã衚瀺ãSCHEDULEDãªãè©Šåæå»ã ãé衚瀺ãªã©ïŒ
Git
Git-flowã®ãã©ã³ãã®äœ¿ãåãæ¹ããã³ãããã®ç²åºŠãã³ãããã¡ãã»ãŒãžã®å 容ãªã©ããªãè¿·ãéšåã§ãããä»åã¯å人éçºãªã®ã§ãªãã¹ãã·ã³ãã«ã«ããŸããããå®åã§ã¯ãã£ãšè©³ãããåãããããããå¿ èŠããããã ãããªãšæããŸããã
ä»åŸã®èª²é¡
ç¹ã«æ¹åã»è¿œå ãããç¹ã¯ä»¥äžã®éãã§ãã
Next.js,Nuxt.jsãTypeScriptã®å°å ¥
ããã³ããšã³ãã®å¯èœæ§ãããã«åºããããã«ãSSR(ãµãŒããŒãµã€ãã¬ã³ããªã³ã°)ããµããŒãããNext.jsãNuxt.jsãžã®ç§»è¡ãæ€èšããŠããŸãã
ãŸããTypeScriptãå°å ¥ããŠä¿å®æ§ã«ãåªããWebã¢ããªã±ãŒã·ã§ã³ãç®æããããšæã£ãŠããŸãã
ãããã€ã®èªåå
çŸåšãGitHub Actionsãå©çšããŠèªåãã¹ããå®æœããŠããŸãããèªåãããã€ãŸã§å¯èœã«ãããã§ãã
æ°æ©èœã®è¿œå
APIã«49â¬ã»ã©æãã°ä»ã®ããŒã¿ãååŸå¯èœã¿ãããªã®ã§æ°æ©èœéçºããã£ãŠããããã§ãã
6. ç¬åŠã§ã®åŠç¿ããã»ã¹
åºæ¬æ å ±æè¡è è©Šéš(1ã¶æ)
ã¢ããªãšçŽæ¥é¢ä¿ãããŸããããwebæè¡ãåŠã¶ã«ããããåºæ¬ããåŠãŒããšèããåºæ¬æ å ±æè¡è è©Šéšã®åŠç¿ãããŸãããæ å ±ç³»ã®åŠæ ¡ãªã©ãåºãŠããªãäºããããwebæè¡ã®åºæ¬ãå称ãªã©ãåŠã¶äžã§åœ¹ç«ã¡ãŸããã
ããã°ã©ãã³ã°åŠç¿(çŽå幎)
ååŠè åããšè©å€ã®é«ãPHPããåŠç¿ãå§ããŸããã
MAMPç°å¢ã§éçºããPDOã掻çšããå®éšçãªã¢ããªãäœæããã¬ã³ã¿ã«ãµãŒããŒã«ãããã€ãããªã©ã®çµéšãç©ã¿ãŸãããEloquentã觊ããåã«SQLã«è§Šããã®ã¯ãè¯ãçµéšã§ããã
webã¢ããªã®éçº(çŽå幎)
Vue.jsãAWSã®åŠç¿ãããªããæãããã§webã¢ããªã®éçºãå§ããŸããã
ãã®ãããéäžã§äœ¿çšæè¡ãå€æŽããããšããéçºã«æéããããããšããããŸããããã®çµéšãããèŠä»¶å®çŸ©ãèšèšã®éèŠæ§ãçæããŸããã
åŠç¿ã§èŠåŽããããš
ç¬åŠã ã£ãã®ã§ãã©ãããã¹ãã«è¿ãèšèšãã³ãŒããªã®ãåãããæ©ãããšããããŸããã
åãéã ã£ãããšãå€ããããŸããããçµéšãèªèµ°ããåãä»ããã«ã¯ç¬åŠãè¯ãããããªãããšæããŸããã
åŠç¿æã«å·¥å€«ããããš
å
ã«æãåããããšãæèããŸããã
ãŸãå®éã«åãããŠã¿ãŠãããŸãåããªããã°ãšã©ãŒãå
ã«æ€èšŒãèå¯ãç¹°ãè¿ããŠå¿
èŠãªããšãããã°ãã®éœåºŠèª¿ã¹ãŠããŸãè©ŠããŠã¿ããšãããããªåŠç¿æ¹æ³ãå®è·µããŸããã
ãŸããããŒãžã§ã³ãç°å¢ãèæ ®ãã2ã€ä»¥äžã®å®è£ æ¹æ³ã調ã¹ãŠãã®äžããèªåã®ç°å¢ã«åãã®ã¯ã©ãããèããæèãæã£ãŠéçºããŸããã
7. åèã«ãããŠããã ãããµã€ããèšäºã®çŽ¹ä»
webã¢ããªéçºã®éçšã§ãåèãããã¯äœ¿çšãããŠããã ãããµã€ããèšäºãªã©ã®äžéšã§ã¯ãããŸãã玹ä»ãããŠããã ããŸãã
- ãããã€ã³ã¹ããŒã«
- Progate
- Udemy
- ReaDouble Laravel9.x
- Vue.js
- Tailwind CSS
- football-data.org - API Quickstart
- Image Creator
- DreamStudio
- Pictogrammers
- Premier League
- ãå®æŒããªãã解説ãããŒã éçºã®å§ãæ¹ Git flowç·š
- [Laravel]AWS EC2ãžãããã€ãã
- è¥æããã°ã©ããŒå¿ èªïŒïŒåã§ç解ã§ããERå³ã®æžãæ¹ïŒã¹ããã
- ãã·ã³ãã«è§£èª¬ãdocker-composeã䜿ã£ãŠLaravelç°å¢æ§ç¯
- ç¡æAPIãšjQueryã§æµ·å€ãµãã«ãŒã®è©Šåæ¥çšã»é äœè¡šãèªåååŸããæ¹æ³
8. ãããã«
åããŠã®webã¢ããªéçºãããŠã¿ãŠããŸã ãŸã åŠç¿ããªããšãããªãåéãå€ããªãšæããŸããã
çµéšè ã®æ¹ããèŠãã°ããŸã ãŸã ç解ã®è¶³ããªãç¹ãå€ããšæããŸããããããæ¹åãç¶ããããšãåºæ¥ãã°ãšæããŸãã
ä»åŸãšã³ãžãã¢ãç®æããŠå°±è·æŽ»åãããŠãããŸããããã æè¡ãåŠã¶ã ãã§ãªãããŠãŒã¶ãŒã«äŸ¡å€ã®ãããµãŒãã¹ãæäŸã§ãããšã³ãžãã¢ã«ãªãããšãç®æšã«ããŠãããããšæããŸãã
æåŸãŸã§èªãã§ããã ãããããšãããããŸããã
誀åè±åãééã£ãŠãããšãããã¢ããªã®äžå ·åãªã©ãããŸããããX(https://twitter.com/houdin111)ãŸã§ãé£çµ¡ããã ãããšãããããã§ãã