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 流程