DEV Community

lamkuanthedev
lamkuanthedev

Posted on

Go寫Blog記錄 #1

注意: 本文是我無聊寫的,打發時間寫的,只為了打發時間而寫,看本文只能跟我一樣打發無聊時間,學不到什麼東西。

這是我第一次在這個平台寫文章,沒想到沒有Markdown的預覽。。。(可能是我不知怎麼開吧。,。)

Backend庫

  • net/http (原生Http庫)
  • chi (router 庫, 因為我想要用原生Go的net/http來寫,所以只用了router增強的庫,不想用Gin或者Echo那種庫)
  • go-playground/validator (DTO驗證用的)
  • gorilla/schema (Unmarshal庫)
  • encoding/json (原生Json處理庫)
  • net/http/httptest (原生Http自動測試庫)
  • logrus + lumberjack (社群Log庫)
  • gorm (ORM 庫)

Frontend庫

  • SvelteKit
  • Skeleton UI (不想寫CSS,TailwindCSS要自己寫組件,我不太有那種設計直覺,也不太會用)
  • Lucia Auth (專為 SvelteKit 設計的認證框架,支援 session / JWT / OAuth 等)
  • svelte-file-dropzone (支援拖放上傳)
  • debounce (配合ElasticSearch用的,可能會用)
  • Howler.js (音樂播放)
  • Plyr (影片播放)

項目設想

  • Markdown編寫和預覽博文。
  • 對博文實現增刪改查。
  • 用戶評論功能,實現OAuth第三方登錄。
  • 查詢博文功能(底層用ElasticSearch做Full Text Search)
  • 博文點讚功能。
  • 博文圖片上傳功能。(用MinIO做文件存儲)
  • 音樂功能,對音樂文件做增刪改查。(用MinIO做文件存儲)
  • 播放音樂功能。
  • 影片功能,對影片文件做增刪改查。(MinIO做文件存儲)
  • 定時發佈/草稿模式
  • RSS Feed 輸出
  • 多語言支持(i18n)
  • 標籤與分類功能(Tag & Category)
  • 通知系統
  • 文章閱讀數記錄
  • 熱度排行榜(本週/本月最熱門文章)
  • 留言回覆功能

設計項目架構

  • 博客前台
  • 博客後台

Top comments (0)