このプロジェクトは、学生が管理することを主体においた、大学生活をより豊かで効率的にするソーシャルプラットフォームである。
サーバー起動
make run
サーバー停止
make down
APIドキュメント
名称 | URL |
---|---|
Swagger Editor | http://localhost:8001/ |
Swagger UI | http://localhost:8002/ |
Swagger API mock | http://localhost:8003/~~ |
このプロジェクトは、学生が管理することを主体においた、大学生活をより豊かで効率的にするソーシャルプラットフォームである。
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等で事足りるものであるが、重要なのはこれらの情報がデータベースの情報をもとに、能動的に情報が整理され、かつ学生側がそれらに自由にアクセスできることにある。
Node.js Express
MongoDB
データベースサーバー以外はすべてDockerコンポーネントにし、管理者の自宅にあるサーバーにデプロイ
データベースサーバーのみAWS Atlasで管理する