Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: チュートリアル・初期設定ウィザードの統合 (wip) #13462

Draft
wants to merge 23 commits into
base: develop
Choose a base branch
from

Conversation

kakkokari-gtyih
Copy link
Contributor

@kakkokari-gtyih kakkokari-gtyih commented Feb 26, 2024

What

2024-02-26.181658.mp4
  • アカウント設定ウィザードからプロフィール設定などを省略し、チュートリアルに統合
    (プロフィール設定はチュートリアル完了後のリンク集に記載で対応)
  • チュートリアルを単独ページ(/onboarding)として用意、アカウント登録完了後はそこに遷移するように
  • チュートリアルが未完了の場合は強制的にチュートリアルを受けさせるオプションを追加

Why

Fix #12997

Additional info (optional)

Checklist

  • Read the contribution guide
  • Test working in a local environment
  • (If needed) Add story of storybook
  • (If needed) Update CHANGELOG.md
  • (If possible) Add tests

@github-actions github-actions bot added packages/frontend Client side specific issue/PR packages/backend Server side specific issue/PR packages/misskey-js labels Feb 26, 2024
Copy link

codecov bot commented Feb 26, 2024

Codecov Report

Attention: Patch coverage is 67.85714% with 9 lines in your changes are missing coverage. Please review.

Project coverage is 66.35%. Comparing base (f6df940) to head (4b3e2b0).

Current head 4b3e2b0 differs from pull request most recent head e2c70bb

Please upload reports for the commit e2c70bb to get more accurate results.

Files Patch % Lines
...kend/src/server/api/endpoints/admin/update-meta.ts 20.00% 4 Missing ⚠️
packages/frontend/src/scripts/reaction-picker.ts 25.00% 3 Missing ⚠️
...ges/backend/src/core/entities/MetaEntityService.ts 0.00% 1 Missing ⚠️
...ges/backend/src/server/api/endpoints/admin/meta.ts 80.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop   #13462      +/-   ##
===========================================
+ Coverage    64.94%   66.35%   +1.41%     
===========================================
  Files          988      987       -1     
  Lines       116719   116379     -340     
  Branches      4254     4471     +217     
===========================================
+ Hits         75799    77226    +1427     
+ Misses       40889    39122    -1767     
  Partials        31       31              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

github-actions bot commented Feb 26, 2024

このPRによるapi.jsonの差分

差分はこちら
--- base
+++ head
@@ -51,6 +51,9 @@
                     "emailRequiredForSignup": {
                       "type": "boolean"
                     },
+                    "canSkipInitialTutorial": {
+                      "type": "boolean"
+                    },
                     "enableHcaptcha": {
                       "type": "boolean"
                     },
@@ -552,6 +555,7 @@
                     "cacheRemoteFiles",
                     "cacheRemoteSensitiveFiles",
                     "emailRequiredForSignup",
+                    "canSkipInitialTutorial",
                     "enableHcaptcha",
                     "hcaptchaSiteKey",
                     "enableMcaptcha",
@@ -12588,6 +12592,9 @@
                   "emailRequiredForSignup": {
                     "type": "boolean"
                   },
+                  "canSkipInitialTutorial": {
+                    "type": "boolean"
+                  },
                   "enableHcaptcha": {
                     "type": "boolean"
                   },
@@ -78584,6 +78591,9 @@
           "emailRequiredForSignup": {
             "type": "boolean"
           },
+          "canSkipInitialTutorial": {
+            "type": "boolean"
+          },
           "enableHcaptcha": {
             "type": "boolean"
           },
@@ -78784,6 +78794,7 @@
           "defaultLightTheme",
           "disableRegistration",
           "emailRequiredForSignup",
+          "canSkipInitialTutorial",
           "enableHcaptcha",
           "hcaptchaSiteKey",
           "enableMcaptcha",

Get diff files from Workflow Page

@syuilo
Copy link
Member

syuilo commented Feb 28, 2024

統合すると長くなりすぎる気がするわね

@kakkokari-gtyih
Copy link
Contributor Author

すでにプロフィール編集の部分は削ったけど、要らなさそうな設定項目はさらに削るといいかも(チュートリアルと初期設定が2つに別れてるほうが煩雑な気もするのと、説明した直後に関連する設定ができる方が良さそうなので)

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Feb 28, 2024

要らなさそうな設定項目

プッシュ通知の設定画面とかは削っても良いかも

@kakkokari-gtyih
Copy link
Contributor Author

参考:ぶるーすかいのオンボーディングは7ページ( #12997 (comment) )で、このチュートリアルは9ページ

@kakkokari-gtyih
Copy link
Contributor Author

とりあえずプッシュ通知のページは消した(合計8ページ)

@syuilo
Copy link
Member

syuilo commented Mar 1, 2024

チュートリアルはやりたい人だけがやれるようなUIが良いと思ってて、それを考えると初期設定とチュートリアルは分離されてた方が良いのではないかと思うわね
サーバーの設定でチュートリアル強制させる場合もその方が実装しやすそう

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Mar 1, 2024

初期設定とチュートリアルは分離されてた方が良いのではないか

このPRで初期設定とチュートリアルを統合する際に、初期設定ウィザードで核となっていたであろう「プロフィール設定」の機能を削除した(理由は下記)ので、残りは「プッシュ通知の設定」「おすすめユーザーの紹介」「プライバシー関連の設定」だけになる
そうなると、初期設定ウィザード自体が必要ない(チュートリアルが必要なほどMisskeyに対しての初心者なら、相応のアシストを行うために設定項目を出す方がいい)のではないかと思ったのでこういう実装にした


※プロフィール設定を消した理由
通常の設定画面に比べて設定できる項目やオプションが整備されておらず、わざわざ別でフォームを設けるよりは、ふつうにプロフィール設定ページに遷移させたほうが良いと思えたため(実際、チュートリアル最終画面ではプロフィール設定画面へのリンクを置くようにしてある)。また、プロフィール設定ページ自体も比較的わかりやすい配置になっており迷うことは少なそうだと考えられるため

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Mar 22, 2024

チュートリアルの項目のうち現在の1ページ目をカットする(返信やリノートについてはXなどと相違ない操作感のため特筆する必要はないと判断)

@Sayamame-beans
Copy link
Contributor

(返信やリノートについてはXなどと相違ない操作感のため特筆する必要はないと判断)

X等に馴染みのない方がMisskeyからしっかりとSNSに触れ始めるようなケースも今後増えてくる可能性があるのではと思ったのですが、いかがでしょうか…?

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Mar 22, 2024

X等に馴染みのない方がMisskeyからしっかりとSNSに触れ始めるようなケース

返信・リノートは触ってるうちにわかりそう(リアクションはMisskey独特のものであり特に戸惑う人が多そうなのでしっかりと実演させる)

あとは以前より極力チュートリアルのページを削って、チュートリアルにかかる時間を抑えてさっさとMisskeyの本体に行ってもらえるようにしたいとかんがえている(このPRでチュートリアルを強制できるようになるため)

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Mar 22, 2024

まあでもあそこについては読み飛ばせばいいだけ(特に進むにあたって障害となるアクションがない)だし残しとくか

@Sayamame-beans
Copy link
Contributor

返信・リノートは触ってるうちにわかりそう

確かにそれもそうですね…

@syuilo
Copy link
Member

syuilo commented May 20, 2024

※プロフィール設定を消した理由
通常の設定画面に比べて設定できる項目やオプションが整備されておらず、わざわざ別でフォームを設けるよりは、ふつうにプロフィール設定ページに遷移させたほうが良いと思えたため(実際、チュートリアル最終画面ではプロフィール設定画面へのリンクを置くようにしてある)。また、プロフィール設定ページ自体も比較的わかりやすい配置になっており迷うことは少なそうだと考えられるため

最小限でもプロフィール設定を半強制的にしたいから初期設定でやらせてる

@kakkokari-gtyih
Copy link
Contributor Author

それもそうか

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
packages/backend Server side specific issue/PR packages/frontend:test packages/frontend Client side specific issue/PR packages/misskey-js
Projects
None yet
3 participants