このプロジェクトは、学生が管理することを主体においた、大学生活をより豊かで効率的にするソーシャルプラットフォームである。
あえて教員や機関の管理から外れることによって、自由度の高い発想や表現を保護し、他の学生や教員と柔軟なコミュニティーを形成することを可能とすることが目的である。
すなわち、Learning Management System(学習管理システム)ならぬLearning Network System(学習ネットワークシステム)である。
1.すべてのユーザーは基本的に匿名及び実名を意図的に選択できる
2.すべてのユーザーは学年、クラスや専攻など、自分自身の所属を証明する手段を持つ
3.特定のドメインの人間しか登録することは不可能
4.ユーザーはそれぞれ6段階の認証レベルが振り分けられており、デフォルトは、
-
ゲスト:0
-
学校関連者:1
-
学生:2
とする。
5.3~5以上になると、
-
3以上:クラスのメンバーや、時間割を編集する権限
-
4以上:時間割に利用する科目を編集する権限 3人まで他のユーザーを認証レベル3として保証することができる。
-
5以上:管理者と同等の権限を持つ 悪質なユーザーのBANや、匿名の剥奪をする権利 3人まで他のユーザーを認証レベル4として保証することができる。
というようにアクセスできる領域が増える。
6.どの学生がどのクラスにいるなどの情報は、必ず1以上のユーザーしかアクセスできない。
7.基本的なレイアウトはダッシュボード形式になっており、その内容は学生やそのコミュニティーが作成し、管理者が承諾したらマージする。
8.初期で入っているのはデータベース管理のフォームと、時間割・イベント・自習 談話室を確認できるダッシュボードと、SNSには必ずあると言っていいPostやプロフィールなどの機能と、VOSの代替となり得る存在、落とし物用の掲示板である。
これらはslack等で事足りるものであるが、重要なのはこれらの情報がデータベースの情報をもとに、能動的に情報が整理され、かつ学生側がそれらに自由にアクセスできることにある。
React.js Material UI
Node.js Express MongoDB
データベースサーバー以外はすべてDockerコンポーネントにし、管理者の自宅にあるサーバーにデプロイ
データベースサーバーのみAWS Atlasで管理する