本學期的 Full Stack Intro. 已經結束一半的課程,想必大家都已經學會用 FastAPI 實作 API Endpoints、撰寫 tests、與 DB 互動等。Final Project 大家將應用課程內容,在課程實作的網站基礎上新增功能並完善內容,實際展現自己的學習成果。
- 進行方式:個人進行,完成專案並報告
- 專案主題:個人雲端筆記本 或 自行提出 Proposal
- 專案成果:以簡報進行成果發表與 demo 展示
接下來的課程將繼續帶大家完成專案的大部分內容,大家可以根據 SPEC 的要求在接下來的幾週內逐步完成需要大家額外實作的部分。
Requirements
方案一:雲端筆記本
- 完成所有 API Endpoints
- 目前
notes 已經在 Lecture 4 實作
users 會在 Lecture 7 帶大家實作
- 課程中實作的內容
- Service 邏輯與 schema 驗證至少新增各一個測試
- 例如:更新同時改 title + content、
NoteRead 的 note_date 型別錯誤
- 新增至少一個額外功能。可實做的額外功能包含(但不限於):
- 以關鍵字搜尋筆記(可以用
Query Parameters 傳入搜尋的關鍵字)
- 幫
notes 新增額外的欄位,並實作其對應的功能
is_archived
is_pinned
emotion
方案二:自行提出 Proposal
- 與 database 串接
- 定義至少兩種資源
- 實現對資源的 CRUD 四種操作,且資源之間至少存在一個 relation
- Service 邏輯與 schema 驗證至少各一個測試
- 必須要有前端使用者介面
- WebUI、GUI
- 必須能透過使用者介面和 backend server 互動
- 介面的美觀不影響,但功能必須正常運作
Scoring Breakdown