NYUコースを迅速に検索します。
Harvardのオンラインカタログが遅いと思う場合は、NYU XDにGraphQLエンドポイントさえありません。
すべてのジョークは別として、私たちのコース検索は巨大であり、オンラインカタログ検索を待つのは非常に面倒です。さらに、世界的に40以上の場所を備えたNYUのグローバルキャンパスとしてのステータスにより、他のコース検索と比較して、異なる学校、さまざまなクラス、さまざまなタイムゾーンがすべてブレンドされているため、現在のWebサイトはゆっくりとしたプロセスです(非常に不可解でむき出しの途方もないものは言うまでもありません)。
そのため、このプロジェクトは、Class.wtfからインスピレーションを受けたように、コース検索の迅速な結果を収集する試みです。
これは友人の間の趣味のプロジェクトであり、すべてが100%働いていることを決してガウルンティーでできないことを覚えておいてください。コースへの登録、またはこのサービスの使用に影響を与えることに責任はありません。
これがすべて言われているので、仲間のNYUの学生が今後の学期のクラスを簡単に見つけるのを助けることが私たちの願望です。これが役立つことを願っています!
すべての学校コードとサブジェクトコードをキャッチします
件名と学校に基づいて各コースを通過してフェッチします
full = true、query = coursename、学校、件名https://schedge.a1liuu.com/2022/fa/search?full=true&query= {coursename}&school = {schoolcode}&subject= {subjectcode}
JSONをステッチしてフォーマットします
学校コード(フェッチ) +サブジェクトコード(フェッチ)=>コンボのリスト(shu/csci)=> courses(fetch)=> name、courseid、school、subject => search(fetches)=>各コースごとのすべての最終リスト
cd frontend
npm install
npm run dev
「クラスステータス」フィールドをアルバートに表示するものと最新の状態に保つには、アルバートのキャッシュとデータを同期する必要があります。一貫性モデルは最終的な一貫性になり、次のメカニズムを使用してこの一貫性モデルを維持します
今のところ、Schedge APIから取得されたデータが最新であると想定しています。上記の一貫性モデルを達成するには、すべてのコースレコードの有効期限を記録するサーバーが必要です。ユーザーがコースレコードを要求するたびに、サーバーはレコードの有効期限をチェックし、ユーザーにデータベースの詳細を返します。