#プロジェクト概要
カナダにCo-op留学に来る日本人向けの情報共有サイト
## 【開発言語】
Next.js (pages/api)
Node.js / Express
Tailwind
MySQL / Redis
## 【機能・実装】
**マイページ**
1, Todoリスト:日々のやること管理
2, 目標管理:今週/今月/留学までの期間で目標を設定・管理
**投稿**
1, 留学に関する情報を投稿できる
2, コメント機能
3, お気に入り機能(ログイン後)
4, いいね機能(高評価のみ)
5, 検索機能
**留学診断**
→複数の質問ベースでCo-op留学・ワーホリのどちらが良いかを診断
1, おすすめ記事表示(診断結果をもとに)
**留学説明**
1, ワーホリ/Co-opのそれぞれ計画を視覚的に表示
2, それぞれの地点で必要な情報のリンクまとめ
## 【DB設計】
ユーザーTB
ーID、ユーザーネーム、生年月日、パスワード
ポストTB
ー ID、投稿ユーザーID、タイトル、内容、タグ(英日)、タイプ(ワーホリ/Co-op/カナダ全体)、評価、画像
ロードマップTB
ー ID、ユーザーID、Todo、それぞれの目標
コメントTB
ー ID、投稿先ポストID、コメント投稿ユーザーID、内容
## 【課題・問題点】
**ペルソナの設定**
どこまでをサイトの対象にするかが未経験であることからも決めづらかった
**ログイン機能の必要性**
ログインする煩わしさとログインによるメリットをどう両立させるか
**頻繁に更新される可能性のある情報のDBとの更新タイミング**
Todoリストなどは1回のログインで何回も更新されうるものであるので、いつ更新するのが一番良いのか
## 【解決策】
**Co-op留学を考えている大学生~20代中ごろまでをペルソナに**
→デジタルマーケティングを学んだ友人とも話し合い、なるべく具体的なペルソナを絞ることで機能もより効率的なものができた
**ログインによる付加価値を付けることで両立**
→ログイン後に、高評価・マイリスト機能・またコメントが書き込めるようになること等様々な付加価値を追加。更に、ログイン・サインアップはユーザーネームと生年月日だけの出来るだけシンプルな情報のみにしたことによりわずらわしさを軽減
**情報の優先順位をつけてRedisに保存**
→頻繁にアクセスされるデータをRedisのキャッシュに格納することで、データベースへの負荷を軽減し応答時間を短縮することができました。
## 【今後の展望】
**韓国・スペイン語での展開**
韓国やスペインは日本と条件が近いのでそれらの国にも対応できるように言語や機能を増やしていきたい