Skip to content

Latest commit

 

History

History
 
 

README.md

Smalruby Classroom

🆕 Smalruby 独自 — upstream に存在しない、Smalruby のために新規追加された機能 日本の学校での利用に特化したクラス管理・作品提出機能。upstream の Scratch には存在しない。

Smalruby Classroom は、日本の学校の授業で Smalruby を使うためのクラス管理・作品提出機能です。

先生が Google または Microsoft アカウントでログインしてクラスを作り、生徒は参加コードと席番号でクラスに参加します。生徒はプロジェクトをワンクリックで提出でき、先生はリアルタイムで一覧・確認・返却できます。

目次

ドキュメント 内容
システム構成 AWS / GCP / Azure サービス、API ルート、データモデル
ユーザーストーリー 先生・生徒それぞれの利用フロー
UI/UX 画面遷移、各フェーズの説明
費用見積もり AWS / GCP の想定費用
ソースコード 関連ファイル一覧
テスト data-testid 一覧、Playwright / 結合テスト
Microsoft 認証 MSAL.js 統合、サイレント再認証、Azure Portal 設定

Smalruby メニューバーの「クラス」ボタン

クイックスタート

先生

  1. Smalruby を開く(https://smalruby.app
  2. メニューバーの「クラス」をクリック
  3. 「先生」を選択 → Google または Microsoft でログイン
  4. 「クラスをつくる」→ クラス名と人数を入力
  5. 生成された参加コードを生徒に伝える

生徒

  1. 先生から参加コードを受け取る
  2. Smalruby を開く(参加リンク or https://smalruby.app
  3. 「生徒」→ 参加コード入力 → 席番号を選択
  4. プロジェクトを作成し「提出」ボタンで提出

Mesh v2 ドメインの自動連動

クラスに参加中(生徒)または先生がクラス管理でクラスを選択中の間、Mesh v2 のドメインはそのクラスの参加コードに自動で固定される。これにより同じクラスの先生・生徒が自動で同じ Mesh ドメインに集まる。詳細は docs/mesh-v2/README.md を参照。

前提条件

  • Google アカウントまたは Microsoft アカウント(先生のログインに必要)
  • モダンブラウザ(Chrome / Edge / Firefox / Safari)
  • インターネット接続

前提: API エンドポイント

クラス機能は CLASSROOM_API_ENDPOINT 環境変数が設定されている場合に有効です(メニューバーに「クラス」ボタンが表示されます)。