Library

Go / Gin / PostgreSQL / Angular

一套大學圖書館管理應用程式:館藏搜尋、借閱、押金追蹤與使用者管理。

系統分為兩種角色:一般使用者(學生、教師、校外人士)可以搜尋並借閱館藏、查看自己的借閱紀錄;館員則可以建立使用者與館藏、管理複本,並追蹤逾期借閱。

後端是以 Go(Gin)開發的 REST API,搭配使用原生資料表繼承的 PostgreSQL 資料庫,並以 Swagger 撰寫 API 文件。前端使用 Angular 與 Bootstrap,介面提供英文與法文兩種語言。

持續整合

每次推送到主分支時,都會觸發一連串的工作流程:

  • GitHub Actions 流程:Go 與 Angular 建置、單元測試、針對實際 API 的端對端(e2e)測試、Swagger 文件產生與程式碼檢查(lint)
  • Docker 映像檔發佈至 GitHub Container Registry
  • 文件自動部署至 GitHub Pages
  • 儲存庫同步鏡像至 GitLab,並設有對應的 GitLab CI 流程

GitHub 文件

圖片集