iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0
Modern Web

「如何從零到一:打造你的首個 Side Project」系列 第 5

Day 5: 攀岩網站改版紀實:從陽春到功能強化的蛻變

  • 分享至 

  • xImage
  •  

作品重生:第二版的轉型之路

在面試時,許多面試官提出了關於作品的問題,發現一個共通點:作品中幾乎沒有用到JavaScript。大多數公司更注重JS的能力,而純切版的職缺需求較少。那時候JS基礎幾乎為零,於是乎下定決心提升自己的JS技能,同時也把之前還沒做的功能做完。

改版後的技術列表

  • 前端框架: React 18
  • UI 框架: MUI
  • 資料/狀態管理: Redux、Redux-Toolkit、Redux-Persist
  • 雲端服務: Firebase(登入系統、資料儲存、圖片儲存、網站部署)
  • 動畫套件: Framer Motion
  • 開發工具: ESLint、Prettier、React Developer Tools、Redux DevTools

作品網站
GitHub

新增功能:拼圖遊戲般的過程

1. 會員管理

使用 Firebase 的 Authentication 完成會員登入、註冊、登出功能。

2. 新增文章與無限滾動

透過 Firebase Firestore 資料庫完成文章的增刪功能,並透過無限滾動(Infinite Scroll)提升使用體驗。

3. 圖片輪播功能

參考了許多 Image Slider 教學,最終選擇自行實作輪播功能,避免只依賴套件,提升 JS 能力。

4. 頁面轉場與進度條

使用 Framer Motion 為頁面轉場增添了動畫效果,並在瀏覽過程中加上進度條,提升互動性。

5. 搜尋功能

基於 Image Gallery 的教學,加入了搜尋功能。學會如何串接 API,也初步接觸了 Tailwind CSS。

Firebase 的選擇與學習

選用 Firebase 是因為當時在島島阿學的專案中使用到了 Firebase 為BAAS(Backend As A Service)的方式提供後端服務,於是便將這次的改版作品用作練習。同時依靠許多網路上的教學來逐步完成功能:

其他新增功能/工具

優化過程中的挑戰與思考

從靜態畫面到增加各種互動功能,這個過程不輕鬆。但隨著實作經驗累積,對程式碼的熟悉度也逐漸提升。深深有感所花的時間都將回報在自己的能力上。

待優化部分

多位前輩提到,照片載入的體驗尚有優化空間,也計劃在未來進行調整,並希望能早日將完整功能上線,然後就過了一年了。。。。。。

推薦閱讀:

今天分享就到這拉,上面蠻多教學資源都有點年紀了,請小心參考,前端技術日新月異R。

有關Side Project Taiwan的簡介

Side Project Taiwan 的宗旨是藉由Side Project開發來成就自我,透過持續學習和合作,共同推動技術和專業的發展。我們相信每一個參與者,無論是什麼專業,都能在這個社群中找到屬於自己的成長空間。

歡迎所有對Side Project開發有興趣的人加入我們,可以是有點子來找夥伴,也可以是來尋找有興趣的Side >Project加入,邀請大家一同打造一個充滿活力且有意義的技術社群!

Discord頻道連結:https://sideproj.tw/dc


上一篇
Day 4: 攀岩網站開發旅程:挑戰與學習並進
下一篇
Day 6: 攀岩網站後端重構 : 從挑戰到突破
系列文
「如何從零到一:打造你的首個 Side Project」30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言