<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Eason Chang</title>
        <link>https://easonchang.com</link>
        <description>This is Eason Chang's website. You can find my interesting projects, thoughts, learning notes, dev experiences, etc.</description>
        <lastBuildDate>Tue, 27 Jan 2026 10:38:01 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>Eason Chang</title>
            <url>https://easonchang.com/logo.png</url>
            <link>https://easonchang.com</link>
        </image>
        <copyright>Copyright © 2015 - 2026 Eason Chang</copyright>
        <item>
            <title><![CDATA[CoreHour - Focus on What Truly Matters: Smart Time Management]]></title>
            <link>https://easonchang.com/posts/corehour</link>
            <guid>https://easonchang.com/posts/corehour</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Track your time, discover your peak productivity hours, and build sustainable work habits with CoreHour]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/corehour.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[CoreHour - 專注於真正重要的事：智慧時間管理]]></title>
            <link>https://easonchang.com/posts/corehour</link>
            <guid>https://easonchang.com/posts/corehour</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[追蹤時間、發現高峰生產力時段，並使用 CoreHour 建立可持續的工作習慣]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/corehour.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[DailyPay - See Your Money Move in Real-Time: Daily Financial Tracking]]></title>
            <link>https://easonchang.com/posts/dailypay</link>
            <guid>https://easonchang.com/posts/dailypay</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Your financial dashboard updated daily - track spending, monitor bank balances, and stay on top of your money with DailyPay]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/dailypay.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[DailyPay - 即時看見你的金錢流動：每日財務追蹤]]></title>
            <link>https://easonchang.com/posts/dailypay</link>
            <guid>https://easonchang.com/posts/dailypay</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[每日更新的財務儀表板 - 使用 DailyPay 追蹤支出、監控銀行餘額，掌握你的金錢動向]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/dailypay.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Equation Pyramid - Math Puzzle Game Inspired by The Devil's Plan]]></title>
            <link>https://easonchang.com/posts/equation-pyramid</link>
            <guid>https://easonchang.com/posts/equation-pyramid</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Challenge your mathematical skills with Equation Pyramid, an interactive 3D puzzle game inspired by Netflix's The Devil's Plan]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/equation-pyramid.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Equation Pyramid - 靈感來自《惡魔計劃》的數學解謎遊戲]]></title>
            <link>https://easonchang.com/posts/equation-pyramid</link>
            <guid>https://easonchang.com/posts/equation-pyramid</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[用 Equation Pyramid 挑戰你的數學技能，這是一款受 Netflix《惡魔計劃》啟發的互動式 3D 解謎遊戲]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/equation-pyramid.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[FireFree - Your Path to Financial Freedom: FIRE Calculator]]></title>
            <link>https://easonchang.com/posts/firefree</link>
            <guid>https://easonchang.com/posts/firefree</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Calculate your path to financial independence and early retirement with FireFree, a comprehensive FIRE calculator built by Aburi Studio]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/firefree.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[FireFree - 計算你的財務自由之路：FIRE 計算機]]></title>
            <link>https://easonchang.com/posts/firefree</link>
            <guid>https://easonchang.com/posts/firefree</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 FireFree 計算你的財務獨立和提早退休之路，由 Aburi Studio 打造的全方位 FIRE 計算工具]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/firefree.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[FocusZone - Vision OS Productivity App with AI-Powered Distraction Detection]]></title>
            <link>https://easonchang.com/posts/focuszone</link>
            <guid>https://easonchang.com/posts/focuszone</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Stay focused in immersive environments with FocusZone, a Vision OS app featuring Pomodoro timer and AI distraction detection for Apple Vision Pro]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/focuszone.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[FocusZone - 結合 AI 干擾偵測的 Vision OS 專注應用]]></title>
            <link>https://easonchang.com/posts/focuszone</link>
            <guid>https://easonchang.com/posts/focuszone</guid>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 FocusZone 在沉浸式環境中保持專注，這是一款為 Apple Vision Pro 設計的 Vision OS 應用，具備番茄鐘計時器和 AI 干擾偵測]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/projects/focuszone.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Timez - Time Zone Converter: Convert time between different timezones]]></title>
            <link>https://easonchang.com/posts/timezone-converter</link>
            <guid>https://easonchang.com/posts/timezone-converter</guid>
            <pubDate>Wed, 06 Mar 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Easily convert time between different timezones and compare overlapping time periods]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/project-timezone-converter/timezone-converter-screenshot.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Timez - Time Zone Converter 時區轉換工具]]></title>
            <link>https://easonchang.com/posts/timezone-converter</link>
            <guid>https://easonchang.com/posts/timezone-converter</guid>
            <pubDate>Wed, 06 Mar 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[輕鬆在不同時區之間轉換時間並比較重疊時間段]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/project-timezone-converter/timezone-converter-screenshot.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Balancing and Improving Readability of Web Titles with react-wrap-balancer]]></title>
            <link>https://easonchang.com/posts/react-wrap-balancer</link>
            <guid>https://easonchang.com/posts/react-wrap-balancer</guid>
            <pubDate>Sat, 04 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Implement Balance Text with react-wrap-balancer, balancing the width of each line of text for improved visual comfort. Lightweight and easy to use]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Balancing%20and%20Improving%20Readability%20of%20Web%20Titles%20with%20react-wrap-balancer&amp;desc=Implement%20Balance%20Text%20with%20react-wrap-balancer%2C%20balancing%20the%20width%20of%20each%20line%20of%20text%20for%20improved%20visual%20comfort.%20Lightweight%20and%20easy%20to%20use" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[讓網頁標題文字更均衡、好讀，使用 react-wrap-balancer]]></title>
            <link>https://easonchang.com/posts/react-wrap-balancer</link>
            <guid>https://easonchang.com/posts/react-wrap-balancer</guid>
            <pubDate>Sat, 04 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 react-wrap-balancer 在 React.js 網頁實作 Balance Text，平衡每一行文字寬度，讓視覺更舒服。輕量化簡單易用，支援 React 18 及 Next.js SSR]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E8%AE%93%E7%B6%B2%E9%A0%81%E6%A8%99%E9%A1%8C%E6%96%87%E5%AD%97%E6%9B%B4%E5%9D%87%E8%A1%A1%E3%80%81%E5%A5%BD%E8%AE%80%EF%BC%8C%E4%BD%BF%E7%94%A8%20react-wrap-balancer&amp;desc=%E4%BD%BF%E7%94%A8%20react-wrap-balancer%20%E5%9C%A8%20React.js%20%E7%B6%B2%E9%A0%81%E5%AF%A6%E4%BD%9C%20Balance%20Text%EF%BC%8C%E5%B9%B3%E8%A1%A1%E6%AF%8F%E4%B8%80%E8%A1%8C%E6%96%87%E5%AD%97%E5%AF%AC%E5%BA%A6%EF%BC%8C%E8%AE%93%E8%A6%96%E8%A6%BA%E6%9B%B4%E8%88%92%E6%9C%8D%E3%80%82%E8%BC%95%E9%87%8F%E5%8C%96%E7%B0%A1%E5%96%AE%E6%98%93%E7%94%A8%EF%BC%8C%E6%94%AF%E6%8F%B4%20React%2018%20%E5%8F%8A%20Next.js%20SSR" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Summary and Review: The Birth of a Dazzling Tech Blog - Modern Next.js Blog Series #30]]></title>
            <link>https://easonchang.com/posts/modern-nextjs-blog-summary</link>
            <guid>https://easonchang.com/posts/modern-nextjs-blog-summary</guid>
            <pubDate>Sat, 15 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Summarizing this 30-day journey of building a dazzling personal blog from scratch with modern front-end technologies, revisiting the learned content, implemented features, and used technologies.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Summary%20and%20Review%3A%20The%20Birth%20of%20a%20Dazzling%20Tech%20Blog%20-%20Modern%20Next.js%20Blog%20Series%20%2330&amp;desc=Summarizing%20this%2030-day%20journey%20of%20building%20a%20dazzling%20personal%20blog%20from%20scratch%20with%20modern%20front-end%20technologies%2C%20revisiting%20the%20learned%20content%2C%20implemented%20features%2C%20and%20used%20technologies." length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[總結與回顧：一個炫砲技術部落格的誕生 - Modern Next.js Blog 系列 #30]]></title>
            <link>https://easonchang.com/posts/modern-nextjs-blog-summary</link>
            <guid>https://easonchang.com/posts/modern-nextjs-blog-summary</guid>
            <pubDate>Sat, 15 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[總結這系列 30 天內從零開始、用現代前端技術打造的炫砲個人部落格，回顧學到的內容、實作出的功能、及用到的技術]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E7%B8%BD%E7%B5%90%E8%88%87%E5%9B%9E%E9%A1%A7%EF%BC%9A%E4%B8%80%E5%80%8B%E7%82%AB%E7%A0%B2%E6%8A%80%E8%A1%93%E9%83%A8%E8%90%BD%E6%A0%BC%E7%9A%84%E8%AA%95%E7%94%9F%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2330&amp;desc=%E7%B8%BD%E7%B5%90%E9%80%99%E7%B3%BB%E5%88%97%2030%20%E5%A4%A9%E5%85%A7%E5%BE%9E%E9%9B%B6%E9%96%8B%E5%A7%8B%E3%80%81%E7%94%A8%E7%8F%BE%E4%BB%A3%E5%89%8D%E7%AB%AF%E6%8A%80%E8%A1%93%E6%89%93%E9%80%A0%E7%9A%84%E7%82%AB%E7%A0%B2%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%EF%BC%8C%E5%9B%9E%E9%A1%A7%E5%AD%B8%E5%88%B0%E7%9A%84%E5%85%A7%E5%AE%B9%E3%80%81%E5%AF%A6%E4%BD%9C%E5%87%BA%E7%9A%84%E5%8A%9F%E8%83%BD%E3%80%81%E5%8F%8A%E7%94%A8%E5%88%B0%E7%9A%84%E6%8A%80%E8%A1%93" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Implementing Old Path Redirection in Next.js Contentlayer Blog - Modern Next.js Blog Series #29]]></title>
            <link>https://easonchang.com/posts/contentlayer-redirection</link>
            <guid>https://easonchang.com/posts/contentlayer-redirection</guid>
            <pubDate>Fri, 14 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Implementing redirection for each MDX article's old path within Next.js's getStaticProps]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Implementing%20Old%20Path%20Redirection%20in%20Next.js%20Contentlayer%20Blog%20-%20Modern%20Next.js%20Blog%20Series%20%2329&amp;desc=Implementing%20redirection%20for%20each%20MDX%20article's%20old%20path%20within%20Next.js's%20getStaticProps" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[在 Next.js Contentlayer blog 實作舊路徑轉址 - Modern Next.js Blog 系列 #29]]></title>
            <link>https://easonchang.com/posts/contentlayer-redirection</link>
            <guid>https://easonchang.com/posts/contentlayer-redirection</guid>
            <pubDate>Fri, 14 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在 Next.js 的 getStaticProps 裡，實作每篇 MDX 文章的舊路徑轉址]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%9C%A8%20Next.js%20Contentlayer%20blog%20%E5%AF%A6%E4%BD%9C%E8%88%8A%E8%B7%AF%E5%BE%91%E8%BD%89%E5%9D%80%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2329&amp;desc=%E5%9C%A8%20Next.js%20%E7%9A%84%20getStaticProps%20%E8%A3%A1%EF%BC%8C%E5%AF%A6%E4%BD%9C%E6%AF%8F%E7%AF%87%20MDX%20%E6%96%87%E7%AB%A0%E7%9A%84%E8%88%8A%E8%B7%AF%E5%BE%91%E8%BD%89%E5%9D%80" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Implementing Multilingual Support with next-i18next in a Next.js Contentlayer Blog - Modern Next.js Blog Series #28]]></title>
            <link>https://easonchang.com/posts/next-i18next-multilingual</link>
            <guid>https://easonchang.com/posts/next-i18next-multilingual</guid>
            <pubDate>Thu, 13 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Implementing multilingual support for English and Chinese in a Next.js Contentlayer blog, including a language switch button and Command Palette]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Implementing%20Multilingual%20Support%20with%20next-i18next%20in%20a%20Next.js%20Contentlayer%20Blog%20-%20Modern%20Next.js%20Blog%20Series%20%2328&amp;desc=Implementing%20multilingual%20support%20for%20English%20and%20Chinese%20in%20a%20Next.js%20Contentlayer%20blog%2C%20including%20a%20language%20switch%20button%20and%20Command%20Palette" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 next-i18next 實作中英文多語系 - Modern Next.js Blog 系列 #28]]></title>
            <link>https://easonchang.com/posts/next-i18next-multilingual</link>
            <guid>https://easonchang.com/posts/next-i18next-multilingual</guid>
            <pubDate>Thu, 13 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在 Next.js Contentlayer 部落格中，使用 next-i18next 實作中英文多語系，包含語系切換按鈕及 Command Palette]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20next-i18next%20%E5%AF%A6%E4%BD%9C%E4%B8%AD%E8%8B%B1%E6%96%87%E5%A4%9A%E8%AA%9E%E7%B3%BB%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2328&amp;desc=%E5%9C%A8%20Next.js%20Contentlayer%20%E9%83%A8%E8%90%BD%E6%A0%BC%E4%B8%AD%EF%BC%8C%E4%BD%BF%E7%94%A8%20next-i18next%20%E5%AF%A6%E4%BD%9C%E4%B8%AD%E8%8B%B1%E6%96%87%E5%A4%9A%E8%AA%9E%E7%B3%BB%EF%BC%8C%E5%8C%85%E5%90%AB%E8%AA%9E%E7%B3%BB%E5%88%87%E6%8F%9B%E6%8C%89%E9%88%95%E5%8F%8A%20Command%20Palette" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Implementing Article Search in kbar Command Palette - Modern Next.js Blog Series #27]]></title>
            <link>https://easonchang.com/posts/kbar-post-search</link>
            <guid>https://easonchang.com/posts/kbar-post-search</guid>
            <pubDate>Wed, 12 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Enabling article search in the Command Palette, allowing navigation directly to specific article pages]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Implementing%20Article%20Search%20in%20kbar%20Command%20Palette%20-%20Modern%20Next.js%20Blog%20Series%20%2327&amp;desc=Enabling%20article%20search%20in%20the%20Command%20Palette%2C%20allowing%20navigation%20directly%20to%20specific%20article%20pages" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[在 kbar Command Palette 實作文章搜尋 - Modern Next.js Blog 系列 #27]]></title>
            <link>https://easonchang.com/posts/kbar-post-search</link>
            <guid>https://easonchang.com/posts/kbar-post-search</guid>
            <pubDate>Wed, 12 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[讓 Command Palette 指令面板能搜尋所有文章，並跳轉到特定文章內頁]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%9C%A8%20kbar%20Command%20Palette%20%E5%AF%A6%E4%BD%9C%E6%96%87%E7%AB%A0%E6%90%9C%E5%B0%8B%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2327&amp;desc=%E8%AE%93%20Command%20Palette%20%E6%8C%87%E4%BB%A4%E9%9D%A2%E6%9D%BF%E8%83%BD%E6%90%9C%E5%B0%8B%E6%89%80%E6%9C%89%E6%96%87%E7%AB%A0%EF%BC%8C%E4%B8%A6%E8%B7%B3%E8%BD%89%E5%88%B0%E7%89%B9%E5%AE%9A%E6%96%87%E7%AB%A0%E5%85%A7%E9%A0%81" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 kbar 加入 Command Palette 指令面板 - Modern Next.js Blog 系列 #26]]></title>
            <link>https://easonchang.com/posts/kbar-command-palette</link>
            <guid>https://easonchang.com/posts/kbar-command-palette</guid>
            <pubDate>Tue, 11 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[安裝 kbar 套件來實作 Command Palette 指令面板，並使用 Tailwind CSS 美化樣式]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20kbar%20%E5%8A%A0%E5%85%A5%20Command%20Palette%20%E6%8C%87%E4%BB%A4%E9%9D%A2%E6%9D%BF%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2326&amp;desc=%E5%AE%89%E8%A3%9D%20kbar%20%E5%A5%97%E4%BB%B6%E4%BE%86%E5%AF%A6%E4%BD%9C%20Command%20Palette%20%E6%8C%87%E4%BB%A4%E9%9D%A2%E6%9D%BF%EF%BC%8C%E4%B8%A6%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%20%E7%BE%8E%E5%8C%96%E6%A8%A3%E5%BC%8F" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding a Comment System to Next.js with giscus - Modern Next.js Blog Series #25]]></title>
            <link>https://easonchang.com/posts/giscus-comment-system</link>
            <guid>https://easonchang.com/posts/giscus-comment-system</guid>
            <pubDate>Mon, 10 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Using @giscus/react to add a comment system within a Next.js blog, binding to Github Discussions as the commenting platform]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20a%20Comment%20System%20to%20Next.js%20with%20giscus%20-%20Modern%20Next.js%20Blog%20Series%20%2325&amp;desc=Using%20%40giscus%2Freact%20to%20add%20a%20comment%20system%20within%20a%20Next.js%20blog%2C%20binding%20to%20Github%20Discussions%20as%20the%20commenting%20platform" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 giscus 在 Next.js 加入留言系統 - Modern Next.js Blog 系列 #25]]></title>
            <link>https://easonchang.com/posts/giscus-comment-system</link>
            <guid>https://easonchang.com/posts/giscus-comment-system</guid>
            <pubDate>Mon, 10 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 @giscus/react 來在 Next.js 部落格內加入留言系統，綁定 Github Discussions 來當作留言板]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20giscus%20%E5%9C%A8%20Next.js%20%E5%8A%A0%E5%85%A5%E7%95%99%E8%A8%80%E7%B3%BB%E7%B5%B1%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2325&amp;desc=%E4%BD%BF%E7%94%A8%20%40giscus%2Freact%20%E4%BE%86%E5%9C%A8%20Next.js%20%E9%83%A8%E8%90%BD%E6%A0%BC%E5%85%A7%E5%8A%A0%E5%85%A5%E7%95%99%E8%A8%80%E7%B3%BB%E7%B5%B1%EF%BC%8C%E7%B6%81%E5%AE%9A%20Github%20Discussions%20%E4%BE%86%E7%95%B6%E4%BD%9C%E7%95%99%E8%A8%80%E6%9D%BF" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding a Table of Contents to MDX Articles - Modern Next.js Blog Series #24]]></title>
            <link>https://easonchang.com/posts/post-side-toc</link>
            <guid>https://easonchang.com/posts/post-side-toc</guid>
            <pubDate>Sun, 09 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Adding a sidebar table of contents to Contentlayer blog articles to provide readers with a clear view of the article structure, using github-slugger and IntersectionObserver]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20a%20Table%20of%20Contents%20to%20MDX%20Articles%20-%20Modern%20Next.js%20Blog%20Series%20%2324&amp;desc=Adding%20a%20sidebar%20table%20of%20contents%20to%20Contentlayer%20blog%20articles%20to%20provide%20readers%20with%20a%20clear%20view%20of%20the%20article%20structure%2C%20using%20github-slugger%20and%20IntersectionObserver" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[在 MDX 文章側邊加入目錄 - Modern Next.js Blog 系列 #24]]></title>
            <link>https://easonchang.com/posts/post-side-toc</link>
            <guid>https://easonchang.com/posts/post-side-toc</guid>
            <pubDate>Sun, 09 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在 Contentlayer 部落格加入文章側邊目錄，讓讀者一目瞭然文章結構，使用 github-slugger 及 IntersectionObserver]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%9C%A8%20MDX%20%E6%96%87%E7%AB%A0%E5%81%B4%E9%82%8A%E5%8A%A0%E5%85%A5%E7%9B%AE%E9%8C%84%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2324&amp;desc=%E5%9C%A8%20Contentlayer%20%E9%83%A8%E8%90%BD%E6%A0%BC%E5%8A%A0%E5%85%A5%E6%96%87%E7%AB%A0%E5%81%B4%E9%82%8A%E7%9B%AE%E9%8C%84%EF%BC%8C%E8%AE%93%E8%AE%80%E8%80%85%E4%B8%80%E7%9B%AE%E7%9E%AD%E7%84%B6%E6%96%87%E7%AB%A0%E7%B5%90%E6%A7%8B%EF%BC%8C%E4%BD%BF%E7%94%A8%20github-slugger%20%E5%8F%8A%20IntersectionObserver" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding a Page Progress Bar with nprogress - Modern Next.js Blog Series #23]]></title>
            <link>https://easonchang.com/posts/nprogress</link>
            <guid>https://easonchang.com/posts/nprogress</guid>
            <pubDate>Sat, 08 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Improving perceived performance for readers by adding a page transition progress bar with the nprogress package]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20a%20Page%20Progress%20Bar%20with%20nprogress%20-%20Modern%20Next.js%20Blog%20Series%20%2323&amp;desc=Improving%20perceived%20performance%20for%20readers%20by%20adding%20a%20page%20transition%20progress%20bar%20with%20the%20nprogress%20package" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 nprogress 加入換頁進度條 - Modern Next.js Blog 系列 #23]]></title>
            <link>https://easonchang.com/posts/nprogress</link>
            <guid>https://easonchang.com/posts/nprogress</guid>
            <pubDate>Sat, 08 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 nprogress 套件加入頁面切換進度條，改善讀者體感效能]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20nprogress%20%E5%8A%A0%E5%85%A5%E6%8F%9B%E9%A0%81%E9%80%B2%E5%BA%A6%E6%A2%9D%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2323&amp;desc=%E4%BD%BF%E7%94%A8%20nprogress%20%E5%A5%97%E4%BB%B6%E5%8A%A0%E5%85%A5%E9%A0%81%E9%9D%A2%E5%88%87%E6%8F%9B%E9%80%B2%E5%BA%A6%E6%A2%9D%EF%BC%8C%E6%94%B9%E5%96%84%E8%AE%80%E8%80%85%E9%AB%94%E6%84%9F%E6%95%88%E8%83%BD" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Optimizing Image Performance Using Next.js Image, plaiceholder, and Custom MDX Components - Modern Next.js Blog Series #22]]></title>
            <link>https://easonchang.com/posts/post-custom-image</link>
            <guid>https://easonchang.com/posts/post-custom-image</guid>
            <pubDate>Fri, 07 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Optimizing in-text image performance using a customized MDX component CustomImage, in conjunction with Next.js <Image/> and the plaiceholder package]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Optimizing%20Image%20Performance%20Using%20Next.js%20Image%2C%20plaiceholder%2C%20and%20Custom%20MDX%20Components%20-%20Modern%20Next.js%20Blog%20Series%20%2322&amp;desc=Optimizing%20in-text%20image%20performance%20using%20a%20customized%20MDX%20component%20CustomImage%2C%20in%20conjunction%20with%20Next.js%20%3CImage%2F%3E%20and%20the%20plaiceholder%20package" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[圖片效能最佳化，使用 Next.js Image、plaiceholder、客製 MDX 元件 - Modern Next.js Blog 系列 #22]]></title>
            <link>https://easonchang.com/posts/post-custom-image</link>
            <guid>https://easonchang.com/posts/post-custom-image</guid>
            <pubDate>Fri, 07 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用客製化 MDX 元件 CustomImage，搭配 Next.js <Image/> 及 plaiceholder 套件，最佳化內文圖片效能]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%9C%96%E7%89%87%E6%95%88%E8%83%BD%E6%9C%80%E4%BD%B3%E5%8C%96%EF%BC%8C%E4%BD%BF%E7%94%A8%20Next.js%20Image%E3%80%81plaiceholder%E3%80%81%E5%AE%A2%E8%A3%BD%20MDX%20%E5%85%83%E4%BB%B6%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2322&amp;desc=%E4%BD%BF%E7%94%A8%E5%AE%A2%E8%A3%BD%E5%8C%96%20MDX%20%E5%85%83%E4%BB%B6%20CustomImage%EF%BC%8C%E6%90%AD%E9%85%8D%20Next.js%20%3CImage%2F%3E%20%E5%8F%8A%20plaiceholder%20%E5%A5%97%E4%BB%B6%EF%BC%8C%E6%9C%80%E4%BD%B3%E5%8C%96%E5%85%A7%E6%96%87%E5%9C%96%E7%89%87%E6%95%88%E8%83%BD" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Enhancing In-text Link Page Speed and Adding External Link Icons - Modern Next.js Blog Series #21]]></title>
            <link>https://easonchang.com/posts/post-custom-link</link>
            <guid>https://easonchang.com/posts/post-custom-link</guid>
            <pubDate>Thu, 06 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Modifying the in-text CustomLink, using Next.js's <Link/> for internal links to accelerate page transitions; adding an external link icon for external links]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Enhancing%20In-text%20Link%20Page%20Speed%20and%20Adding%20External%20Link%20Icons%20-%20Modern%20Next.js%20Blog%20Series%20%2321&amp;desc=Modifying%20the%20in-text%20CustomLink%2C%20using%20Next.js's%20%3CLink%2F%3E%20for%20internal%20links%20to%20accelerate%20page%20transitions%3B%20adding%20an%20external%20link%20icon%20for%20external%20links" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[強化內文連結換頁速度、加入外部連結 icon - Modern Next.js Blog 系列 #21]]></title>
            <link>https://easonchang.com/posts/post-custom-link</link>
            <guid>https://easonchang.com/posts/post-custom-link</guid>
            <pubDate>Thu, 06 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[修改內文 CustomLink，針對內部連結使用 Next.js 提供的 <Link/> 加速頁面切換；針對外部連結則加入外聯 icon 提示]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%BC%B7%E5%8C%96%E5%85%A7%E6%96%87%E9%80%A3%E7%B5%90%E6%8F%9B%E9%A0%81%E9%80%9F%E5%BA%A6%E3%80%81%E5%8A%A0%E5%85%A5%E5%A4%96%E9%83%A8%E9%80%A3%E7%B5%90%20icon%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2321&amp;desc=%E4%BF%AE%E6%94%B9%E5%85%A7%E6%96%87%20CustomLink%EF%BC%8C%E9%87%9D%E5%B0%8D%E5%85%A7%E9%83%A8%E9%80%A3%E7%B5%90%E4%BD%BF%E7%94%A8%20Next.js%20%E6%8F%90%E4%BE%9B%E7%9A%84%20%3CLink%2F%3E%20%E5%8A%A0%E9%80%9F%E9%A0%81%E9%9D%A2%E5%88%87%E6%8F%9B%EF%BC%9B%E9%87%9D%E5%B0%8D%E5%A4%96%E9%83%A8%E9%80%A3%E7%B5%90%E5%89%87%E5%8A%A0%E5%85%A5%E5%A4%96%E8%81%AF%20icon%20%E6%8F%90%E7%A4%BA" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[為內文小標題加入 anchor 錨點連結 - Modern Next.js Blog 系列 #20]]></title>
            <link>https://easonchang.com/posts/post-heading-anchor</link>
            <guid>https://easonchang.com/posts/post-heading-anchor</guid>
            <pubDate>Wed, 05 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 rehype-slug 套件在內文小標題補上 id 屬性，並使用客製 MDX 元件 CustomHeading 加入 anchor 連結]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E7%82%BA%E5%85%A7%E6%96%87%E5%B0%8F%E6%A8%99%E9%A1%8C%E5%8A%A0%E5%85%A5%20anchor%20%E9%8C%A8%E9%BB%9E%E9%80%A3%E7%B5%90%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2320&amp;desc=%E4%BD%BF%E7%94%A8%20rehype-slug%20%E5%A5%97%E4%BB%B6%E5%9C%A8%E5%85%A7%E6%96%87%E5%B0%8F%E6%A8%99%E9%A1%8C%E8%A3%9C%E4%B8%8A%20id%20%E5%B1%AC%E6%80%A7%EF%BC%8C%E4%B8%A6%E4%BD%BF%E7%94%A8%E5%AE%A2%E8%A3%BD%20MDX%20%E5%85%83%E4%BB%B6%20CustomHeading%20%E5%8A%A0%E5%85%A5%20anchor%20%E9%80%A3%E7%B5%90" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Generating RSS Feed with feed - Modern Next.js Blog Series #19]]></title>
            <link>https://easonchang.com/posts/rss-feed</link>
            <guid>https://easonchang.com/posts/rss-feed</guid>
            <pubDate>Tue, 04 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Add RSS Feed functionality to the blog, allowing readers to subscribe to new articles via RSS]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Generating%20RSS%20Feed%20with%20feed%20-%20Modern%20Next.js%20Blog%20Series%20%2319&amp;desc=Add%20RSS%20Feed%20functionality%20to%20the%20blog%2C%20allowing%20readers%20to%20subscribe%20to%20new%20articles%20via%20RSS" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 feed 生成 RSS Feed - Modern Next.js Blog 系列 #19]]></title>
            <link>https://easonchang.com/posts/rss-feed</link>
            <guid>https://easonchang.com/posts/rss-feed</guid>
            <pubDate>Tue, 04 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在部落格加入 RSS Feed 功能，讓讀者能以 RSS 形式訂閱最新文章]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20feed%20%E7%94%9F%E6%88%90%20RSS%20Feed%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2319&amp;desc=%E5%9C%A8%E9%83%A8%E8%90%BD%E6%A0%BC%E5%8A%A0%E5%85%A5%20RSS%20Feed%20%E5%8A%9F%E8%83%BD%EF%BC%8C%E8%AE%93%E8%AE%80%E8%80%85%E8%83%BD%E4%BB%A5%20RSS%20%E5%BD%A2%E5%BC%8F%E8%A8%82%E9%96%B1%E6%9C%80%E6%96%B0%E6%96%87%E7%AB%A0" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Generating Sitemap with next-sitemap - Modern Next.js Blog Series #18]]></title>
            <link>https://easonchang.com/posts/next-sitemap</link>
            <guid>https://easonchang.com/posts/next-sitemap</guid>
            <pubDate>Mon, 03 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Generate a Sitemap for the website using next-sitemap, allowing crawlers to understand the site structure and enhance SEO]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Generating%20Sitemap%20with%20next-sitemap%20-%20Modern%20Next.js%20Blog%20Series%20%2318&amp;desc=Generate%20a%20Sitemap%20for%20the%20website%20using%20next-sitemap%2C%20allowing%20crawlers%20to%20understand%20the%20site%20structure%20and%20enhance%20SEO" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[使用 next-sitemap 生成 Sitemap - Modern Next.js Blog 系列 #18]]></title>
            <link>https://easonchang.com/posts/next-sitemap</link>
            <guid>https://easonchang.com/posts/next-sitemap</guid>
            <pubDate>Mon, 03 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[用 next-sitemap 生成 Sitemap 網站地圖，讓爬蟲了解網站結構，強化 SEO]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%BF%E7%94%A8%20next-sitemap%20%E7%94%9F%E6%88%90%20Sitemap%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2318&amp;desc=%E7%94%A8%20next-sitemap%20%E7%94%9F%E6%88%90%20Sitemap%20%E7%B6%B2%E7%AB%99%E5%9C%B0%E5%9C%96%EF%BC%8C%E8%AE%93%E7%88%AC%E8%9F%B2%E4%BA%86%E8%A7%A3%E7%B6%B2%E7%AB%99%E7%B5%90%E6%A7%8B%EF%BC%8C%E5%BC%B7%E5%8C%96%20SEO" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding Open Graph, LD-JSON, and Other SEO Meta Data - Modern Next.js Blog Series #17]]></title>
            <link>https://easonchang.com/posts/next-seo-meta-data</link>
            <guid>https://easonchang.com/posts/next-seo-meta-data</guid>
            <pubDate>Sun, 02 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Using next-seo to configure titles, descriptions, thumbnails, Open Graph, LD-JSON for the entire site, making each page understandable to search engines and enhancing SEO]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20Open%20Graph%2C%20LD-JSON%2C%20and%20Other%20SEO%20Meta%20Data%20-%20Modern%20Next.js%20Blog%20Series%20%2317&amp;desc=Using%20next-seo%20to%20configure%20titles%2C%20descriptions%2C%20thumbnails%2C%20Open%20Graph%2C%20LD-JSON%20for%20the%20entire%20site%2C%20making%20each%20page%20understandable%20to%20search%20engines%20and%20enhancing%20SEO" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[加入 Open Graph、LD-JSON 等 SEO meta data - Modern Next.js Blog 系列 #17]]></title>
            <link>https://easonchang.com/posts/next-seo-meta-data</link>
            <guid>https://easonchang.com/posts/next-seo-meta-data</guid>
            <pubDate>Sun, 02 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 next-seo 為全站設定標題、描述文字、縮圖、Open Graph、LD-JSON，讓搜尋引擎理解每個頁面意義，強化 SEO]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%8A%A0%E5%85%A5%20Open%20Graph%E3%80%81LD-JSON%20%E7%AD%89%20SEO%20meta%20data%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2317&amp;desc=%E4%BD%BF%E7%94%A8%20next-seo%20%E7%82%BA%E5%85%A8%E7%AB%99%E8%A8%AD%E5%AE%9A%E6%A8%99%E9%A1%8C%E3%80%81%E6%8F%8F%E8%BF%B0%E6%96%87%E5%AD%97%E3%80%81%E7%B8%AE%E5%9C%96%E3%80%81Open%20Graph%E3%80%81LD-JSON%EF%BC%8C%E8%AE%93%E6%90%9C%E5%B0%8B%E5%BC%95%E6%93%8E%E7%90%86%E8%A7%A3%E6%AF%8F%E5%80%8B%E9%A0%81%E9%9D%A2%E6%84%8F%E7%BE%A9%EF%BC%8C%E5%BC%B7%E5%8C%96%20SEO" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding 'Copy Button' to Code Blocks Using Custom MDX Components - Modern Next.js Blog Series #16]]></title>
            <link>https://easonchang.com/posts/code-copy-button</link>
            <guid>https://easonchang.com/posts/code-copy-button</guid>
            <pubDate>Sat, 01 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Add a 'Copy Button' to code blocks using the custom MDX component CustomPre]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20'Copy%20Button'%20to%20Code%20Blocks%20Using%20Custom%20MDX%20Components%20-%20Modern%20Next.js%20Blog%20Series%20%2316&amp;desc=Add%20a%20'Copy%20Button'%20to%20code%20blocks%20using%20the%20custom%20MDX%20component%20CustomPre" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[加入程式碼區塊「複製按鈕」，使用客製化 MDX 元件 - Modern Next.js Blog 系列 #16]]></title>
            <link>https://easonchang.com/posts/code-copy-button</link>
            <guid>https://easonchang.com/posts/code-copy-button</guid>
            <pubDate>Sat, 01 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用客製化 MDX 元件 CustomPre，在程式碼區塊加入「複製按鈕」]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%8A%A0%E5%85%A5%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%8D%80%E5%A1%8A%E3%80%8C%E8%A4%87%E8%A3%BD%E6%8C%89%E9%88%95%E3%80%8D%EF%BC%8C%E4%BD%BF%E7%94%A8%E5%AE%A2%E8%A3%BD%E5%8C%96%20MDX%20%E5%85%83%E4%BB%B6%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2316&amp;desc=%E4%BD%BF%E7%94%A8%E5%AE%A2%E8%A3%BD%E5%8C%96%20MDX%20%E5%85%83%E4%BB%B6%20CustomPre%EF%BC%8C%E5%9C%A8%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%8D%80%E5%A1%8A%E5%8A%A0%E5%85%A5%E3%80%8C%E8%A4%87%E8%A3%BD%E6%8C%89%E9%88%95%E3%80%8D" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding Titles to Code Blocks Using rehype-code-titles - Modern Next.js Blog Series #15]]></title>
            <link>https://easonchang.com/posts/rehype-code-titles</link>
            <guid>https://easonchang.com/posts/rehype-code-titles</guid>
            <pubDate>Fri, 30 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Using rehype-code-titles to add titles to each code block]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20Titles%20to%20Code%20Blocks%20Using%20rehype-code-titles%20-%20Modern%20Next.js%20Blog%20Series%20%2315&amp;desc=Using%20rehype-code-titles%20to%20add%20titles%20to%20each%20code%20block" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[加入程式碼區塊標題，使用 rehype-code-titles - Modern Next.js Blog 系列 #15]]></title>
            <link>https://easonchang.com/posts/rehype-code-titles</link>
            <guid>https://easonchang.com/posts/rehype-code-titles</guid>
            <pubDate>Fri, 30 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 rehype-code-titles，為每個程式碼區塊加入標題]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%8A%A0%E5%85%A5%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%8D%80%E5%A1%8A%E6%A8%99%E9%A1%8C%EF%BC%8C%E4%BD%BF%E7%94%A8%20rehype-code-titles%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2315&amp;desc=%E4%BD%BF%E7%94%A8%20rehype-code-titles%EF%BC%8C%E7%82%BA%E6%AF%8F%E5%80%8B%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%8D%80%E5%A1%8A%E5%8A%A0%E5%85%A5%E6%A8%99%E9%A1%8C" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Adding Syntax Highlighting to Code Blocks Using rehype-prism-plus - Modern Next.js Blog Series #14]]></title>
            <link>https://easonchang.com/posts/rehype-prism-plus-syntax-highlighting</link>
            <guid>https://easonchang.com/posts/rehype-prism-plus-syntax-highlighting</guid>
            <pubDate>Thu, 29 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Using the rehype-prism-plus package to add Syntax Highlighting effects to code blocks]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Adding%20Syntax%20Highlighting%20to%20Code%20Blocks%20Using%20rehype-prism-plus%20-%20Modern%20Next.js%20Blog%20Series%20%2314&amp;desc=Using%20the%20rehype-prism-plus%20package%20to%20add%20Syntax%20Highlighting%20effects%20to%20code%20blocks" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[加入程式碼 Syntax Highlighting，使用 rehype-prism-plus - Modern Next.js Blog 系列 #14]]></title>
            <link>https://easonchang.com/posts/rehype-prism-plus-syntax-highlighting</link>
            <guid>https://easonchang.com/posts/rehype-prism-plus-syntax-highlighting</guid>
            <pubDate>Thu, 29 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 rehype-prism-plus 套件，讓程式碼區塊有 Syntax Highlighting 效果]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%8A%A0%E5%85%A5%E7%A8%8B%E5%BC%8F%E7%A2%BC%20Syntax%20Highlighting%EF%BC%8C%E4%BD%BF%E7%94%A8%20rehype-prism-plus%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2314&amp;desc=%E4%BD%BF%E7%94%A8%20rehype-prism-plus%20%E5%A5%97%E4%BB%B6%EF%BC%8C%E8%AE%93%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%8D%80%E5%A1%8A%E6%9C%89%20Syntax%20Highlighting%20%E6%95%88%E6%9E%9C" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Styling the Article Detail Page - Modern Next.js Blog Series #13]]></title>
            <link>https://easonchang.com/posts/blog-post-page-style</link>
            <guid>https://easonchang.com/posts/blog-post-page-style</guid>
            <pubDate>Wed, 28 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Using Tailwind CSS to style the blog post detail page]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Styling%20the%20Article%20Detail%20Page%20-%20Modern%20Next.js%20Blog%20Series%20%2313&amp;desc=Using%20Tailwind%20CSS%20to%20style%20the%20blog%20post%20detail%20page" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[文章內頁樣式切版 - Modern Next.js Blog 系列 #13]]></title>
            <link>https://easonchang.com/posts/blog-post-page-style</link>
            <guid>https://easonchang.com/posts/blog-post-page-style</guid>
            <pubDate>Wed, 28 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 Tailwind CSS 切版 Blog 內文樣式]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E6%96%87%E7%AB%A0%E5%85%A7%E9%A0%81%E6%A8%A3%E5%BC%8F%E5%88%87%E7%89%88%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2313&amp;desc=%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%20%E5%88%87%E7%89%88%20Blog%20%E5%85%A7%E6%96%87%E6%A8%A3%E5%BC%8F" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Styling the Blog Homepage - Modern Next.js Blog Series #12]]></title>
            <link>https://easonchang.com/posts/blog-homepage-style</link>
            <guid>https://easonchang.com/posts/blog-homepage-style</guid>
            <pubDate>Tue, 27 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Continuing style the  blog homepage using Tailwind CSS]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Styling%20the%20Blog%20Homepage%20-%20Modern%20Next.js%20Blog%20Series%20%2312&amp;desc=Continuing%20style%20the%20%20blog%20homepage%20using%20Tailwind%20CSS" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[首頁樣式切版 - Modern Next.js Blog 系列 #12]]></title>
            <link>https://easonchang.com/posts/blog-homepage-style</link>
            <guid>https://easonchang.com/posts/blog-homepage-style</guid>
            <pubDate>Tue, 27 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[繼續使用 Tailwind CSS 切版 Blog 首頁樣式]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E9%A6%96%E9%A0%81%E6%A8%A3%E5%BC%8F%E5%88%87%E7%89%88%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2312&amp;desc=%E7%B9%BC%E7%BA%8C%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%20%E5%88%87%E7%89%88%20Blog%20%E9%A6%96%E9%A0%81%E6%A8%A3%E5%BC%8F" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Full Site Styling - Modern Next.js Blog Series #11]]></title>
            <link>https://easonchang.com/posts/blog-site-style</link>
            <guid>https://easonchang.com/posts/blog-site-style</guid>
            <pubDate>Mon, 26 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Start styling the Modern Blog site using Tailwind CSS, including Header, Footer, and more.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Full%20Site%20Styling%20-%20Modern%20Next.js%20Blog%20Series%20%2311&amp;desc=Start%20styling%20the%20Modern%20Blog%20site%20using%20Tailwind%20CSS%2C%20including%20Header%2C%20Footer%2C%20and%20more." length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[全站樣式切版 - Modern Next.js Blog 系列 #11]]></title>
            <link>https://easonchang.com/posts/blog-site-style</link>
            <guid>https://easonchang.com/posts/blog-site-style</guid>
            <pubDate>Mon, 26 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 Tailwind CSS 開始 Modern Blog 全站樣式切版，包含 Header、Footer 等]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%85%A8%E7%AB%99%E6%A8%A3%E5%BC%8F%E5%88%87%E7%89%88%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2311&amp;desc=%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%20%E9%96%8B%E5%A7%8B%20Modern%20Blog%20%E5%85%A8%E7%AB%99%E6%A8%A3%E5%BC%8F%E5%88%87%E7%89%88%EF%BC%8C%E5%8C%85%E5%90%AB%20Header%E3%80%81Footer%20%E7%AD%89" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Dark Mode Support with Tailwind CSS and next-themes - Modern Next.js Blog Series #10]]></title>
            <link>https://easonchang.com/posts/darkmode-tailwindcss</link>
            <guid>https://easonchang.com/posts/darkmode-tailwindcss</guid>
            <pubDate>Sun, 25 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Supporting dark mode with Tailwind CSS and using the next-themes package to detect reader's preferred mode and implement a toggle button]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Dark%20Mode%20Support%20with%20Tailwind%20CSS%20and%20next-themes%20-%20Modern%20Next.js%20Blog%20Series%20%2310&amp;desc=Supporting%20dark%20mode%20with%20Tailwind%20CSS%20and%20using%20the%20next-themes%20package%20to%20detect%20reader's%20preferred%20mode%20and%20implement%20a%20toggle%20button" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Dark Mode Support with Tailwind CSS and next-themes - Modern Next.js Blog Series #10]]></title>
            <link>https://easonchang.com/posts/darkmode-tailwindcss</link>
            <guid>https://easonchang.com/posts/darkmode-tailwindcss</guid>
            <pubDate>Sun, 25 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Supporting dark mode with Tailwind CSS and using the next-themes package to detect reader's preferred mode and implement a toggle button]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Dark%20Mode%20Support%20with%20Tailwind%20CSS%20and%20next-themes%20-%20Modern%20Next.js%20Blog%20Series%20%2310&amp;desc=Supporting%20dark%20mode%20with%20Tailwind%20CSS%20and%20using%20the%20next-themes%20package%20to%20detect%20reader's%20preferred%20mode%20and%20implement%20a%20toggle%20button" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Dark Mode 深色模式支援，使用 Tailwind CSS、next-themes - Modern Next.js Blog 系列 #10]]></title>
            <link>https://easonchang.com/posts/darkmode-tailwindcss</link>
            <guid>https://easonchang.com/posts/darkmode-tailwindcss</guid>
            <pubDate>Sun, 25 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在 Tailwind CSS 支援深色模式，並使用 next-themes 套件來偵測讀者偏好模式，並實作切換按鈕]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Dark%20Mode%20%E6%B7%B1%E8%89%B2%E6%A8%A1%E5%BC%8F%E6%94%AF%E6%8F%B4%EF%BC%8C%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%E3%80%81next-themes%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2310&amp;desc=%E5%9C%A8%20Tailwind%20CSS%20%E6%94%AF%E6%8F%B4%E6%B7%B1%E8%89%B2%E6%A8%A1%E5%BC%8F%EF%BC%8C%E4%B8%A6%E4%BD%BF%E7%94%A8%20next-themes%20%E5%A5%97%E4%BB%B6%E4%BE%86%E5%81%B5%E6%B8%AC%E8%AE%80%E8%80%85%E5%81%8F%E5%A5%BD%E6%A8%A1%E5%BC%8F%EF%BC%8C%E4%B8%A6%E5%AF%A6%E4%BD%9C%E5%88%87%E6%8F%9B%E6%8C%89%E9%88%95" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[安裝 Tailwind CSS 和相關 ESLint、Prettier 設定 - Modern Next.js Blog 系列 #09]]></title>
            <link>https://easonchang.com/posts/tailwindcss-setup</link>
            <guid>https://easonchang.com/posts/tailwindcss-setup</guid>
            <pubDate>Sat, 24 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[安裝 Tailwind CSS 這套 CSS 工具，設定好對應的 ESLint, Prettier 規則]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%AE%89%E8%A3%9D%20Tailwind%20CSS%20%E5%92%8C%E7%9B%B8%E9%97%9C%20ESLint%E3%80%81Prettier%20%E8%A8%AD%E5%AE%9A%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2309&amp;desc=%E5%AE%89%E8%A3%9D%20Tailwind%20CSS%20%E9%80%99%E5%A5%97%20CSS%20%E5%B7%A5%E5%85%B7%EF%BC%8C%E8%A8%AD%E5%AE%9A%E5%A5%BD%E5%B0%8D%E6%87%89%E7%9A%84%20ESLint%2C%20Prettier%20%E8%A6%8F%E5%89%87" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Enabling MDX Support in Contentlayer Articles - Modern Next.js Blog Series #08]]></title>
            <link>https://easonchang.com/posts/contentlayer-mdx</link>
            <guid>https://easonchang.com/posts/contentlayer-mdx</guid>
            <pubDate>Fri, 23 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Supporting MDX format in Contentlayer allows for the insertion of any React component within Markdown, enhancing the flexibility of article content]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Enabling%20MDX%20Support%20in%20Contentlayer%20Articles%20-%20Modern%20Next.js%20Blog%20Series%20%2308&amp;desc=Supporting%20MDX%20format%20in%20Contentlayer%20allows%20for%20the%20insertion%20of%20any%20React%20component%20within%20Markdown%2C%20enhancing%20the%20flexibility%20of%20article%20content" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[讓 Contentlayer 文章支援 MDX - Modern Next.js Blog 系列 #08]]></title>
            <link>https://easonchang.com/posts/contentlayer-mdx</link>
            <guid>https://easonchang.com/posts/contentlayer-mdx</guid>
            <pubDate>Fri, 23 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[在 Contentlayer 支援 MDX 格式，能在 Markdown 內插入任何 React 元件，提升文章內容靈活度]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E8%AE%93%20Contentlayer%20%E6%96%87%E7%AB%A0%E6%94%AF%E6%8F%B4%20MDX%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2308&amp;desc=%E5%9C%A8%20Contentlayer%20%E6%94%AF%E6%8F%B4%20MDX%20%E6%A0%BC%E5%BC%8F%EF%BC%8C%E8%83%BD%E5%9C%A8%20Markdown%20%E5%85%A7%E6%8F%92%E5%85%A5%E4%BB%BB%E4%BD%95%20React%20%E5%85%83%E4%BB%B6%EF%BC%8C%E6%8F%90%E5%8D%87%E6%96%87%E7%AB%A0%E5%85%A7%E5%AE%B9%E9%9D%88%E6%B4%BB%E5%BA%A6" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Implementing Post Page Features, Rendering Markdown Post Content - Modern Next.js Blog Series #07]]></title>
            <link>https://easonchang.com/posts/contentlayer-post-content</link>
            <guid>https://easonchang.com/posts/contentlayer-post-content</guid>
            <pubDate>Thu, 22 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Implementing Contentlayer post pages, displaying complete article Markdown content]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Implementing%20Post%20Page%20Features%2C%20Rendering%20Markdown%20Post%20Content%20-%20Modern%20Next.js%20Blog%20Series%20%2307&amp;desc=Implementing%20Contentlayer%20post%20pages%2C%20displaying%20complete%20article%20Markdown%20content" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[文章內頁功能實作，渲染 Markdown 文章內容 - Modern Next.js Blog 系列 #07]]></title>
            <link>https://easonchang.com/posts/contentlayer-post-content</link>
            <guid>https://easonchang.com/posts/contentlayer-post-content</guid>
            <pubDate>Thu, 22 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[實作 Contentlayer 文章內頁，呈現完整文章 Markdown 內容]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E6%96%87%E7%AB%A0%E5%85%A7%E9%A0%81%E5%8A%9F%E8%83%BD%E5%AF%A6%E4%BD%9C%EF%BC%8C%E6%B8%B2%E6%9F%93%20Markdown%20%E6%96%87%E7%AB%A0%E5%85%A7%E5%AE%B9%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2307&amp;desc=%E5%AF%A6%E4%BD%9C%20Contentlayer%20%E6%96%87%E7%AB%A0%E5%85%A7%E9%A0%81%EF%BC%8C%E5%91%88%E7%8F%BE%E5%AE%8C%E6%95%B4%E6%96%87%E7%AB%A0%20Markdown%20%E5%85%A7%E5%AE%B9" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Implementing Homepage Functionality, Adding Contentlayer Post List - Modern Next.js Blog Series #06]]></title>
            <link>https://easonchang.com/posts/contentlayer-post-list</link>
            <guid>https://easonchang.com/posts/contentlayer-post-list</guid>
            <pubDate>Wed, 21 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Implementing homepage post list functionality using Contentlayer, displaying all Markdown articles]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Implementing%20Homepage%20Functionality%2C%20Adding%20Contentlayer%20Post%20List%20-%20Modern%20Next.js%20Blog%20Series%20%2306&amp;desc=Implementing%20homepage%20post%20list%20functionality%20using%20Contentlayer%2C%20displaying%20all%20Markdown%20articles" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[首頁功能實作，加入 Contentlayer 文章列表 - Modern Next.js Blog 系列 #06]]></title>
            <link>https://easonchang.com/posts/contentlayer-post-list</link>
            <guid>https://easonchang.com/posts/contentlayer-post-list</guid>
            <pubDate>Wed, 21 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 Contentlayer 實作首頁文章列表功能，呈現所有 Markdown 文章]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E9%A6%96%E9%A0%81%E5%8A%9F%E8%83%BD%E5%AF%A6%E4%BD%9C%EF%BC%8C%E5%8A%A0%E5%85%A5%20Contentlayer%20%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2306&amp;desc=%E4%BD%BF%E7%94%A8%20Contentlayer%20%E5%AF%A6%E4%BD%9C%E9%A6%96%E9%A0%81%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8%E5%8A%9F%E8%83%BD%EF%BC%8C%E5%91%88%E7%8F%BE%E6%89%80%E6%9C%89%20Markdown%20%E6%96%87%E7%AB%A0" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Introduction to Markdown & Installing ContentLayer - Modern Next.js Blog Series #05]]></title>
            <link>https://easonchang.com/posts/markdown-contentlayer</link>
            <guid>https://easonchang.com/posts/markdown-contentlayer</guid>
            <pubDate>Tue, 20 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Writing articles using Markdown syntax and installing Contentlayer to convert Markdown files into articles]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Introduction%20to%20Markdown%20%26%20Installing%20ContentLayer%20-%20Modern%20Next.js%20Blog%20Series%20%2305&amp;desc=Writing%20articles%20using%20Markdown%20syntax%20and%20installing%20Contentlayer%20to%20convert%20Markdown%20files%20into%20articles" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Markdown 簡介 & 安裝 ContentLayer - Modern Next.js Blog 系列 #05]]></title>
            <link>https://easonchang.com/posts/markdown-contentlayer</link>
            <guid>https://easonchang.com/posts/markdown-contentlayer</guid>
            <pubDate>Tue, 20 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[使用 Markdown 語法撰寫文章，以及安裝 Contentlayer 將 Markdown 檔案轉換成文章]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Markdown%20%E7%B0%A1%E4%BB%8B%20%26%20%E5%AE%89%E8%A3%9D%20ContentLayer%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2305&amp;desc=%E4%BD%BF%E7%94%A8%20Markdown%20%E8%AA%9E%E6%B3%95%E6%92%B0%E5%AF%AB%E6%96%87%E7%AB%A0%EF%BC%8C%E4%BB%A5%E5%8F%8A%E5%AE%89%E8%A3%9D%20Contentlayer%20%E5%B0%87%20Markdown%20%E6%AA%94%E6%A1%88%E8%BD%89%E6%8F%9B%E6%88%90%E6%96%87%E7%AB%A0" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Basic Setup for Next.js Projects with ESLint, Prettier, TypeScript, etc. - Modern Next.js Blog Series #04]]></title>
            <link>https://easonchang.com/posts/nextjs-dev-env</link>
            <guid>https://easonchang.com/posts/nextjs-dev-env</guid>
            <pubDate>Mon, 19 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Basic setup for Next.js projects for a smoother development experience and a more readable project structure. Includes locking the Node.js version with .nvmrc, integrating ESLint and Prettier, using the /src folder, and setting up Absolute Import]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Basic%20Setup%20for%20Next.js%20Projects%20with%20ESLint%2C%20Prettier%2C%20TypeScript%2C%20etc.%20-%20Modern%20Next.js%20Blog%20Series%20%2304&amp;desc=Basic%20setup%20for%20Next.js%20projects%20for%20a%20smoother%20development%20experience%20and%20a%20more%20readable%20project%20structure.%20Includes%20locking%20the%20Node.js%20version%20with%20.nvmrc%2C%20integrating%20ESLint%20and%20Prettier%2C%20using%20the%20%2Fsrc%20folder%2C%20and%20setting%20up%20Absolute%20Import" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[ESLint、Prettier、TypeScript 等 Next.js 專案基礎設定 - Modern Next.js Blog 系列 #04]]></title>
            <link>https://easonchang.com/posts/nextjs-dev-env</link>
            <guid>https://easonchang.com/posts/nextjs-dev-env</guid>
            <pubDate>Mon, 19 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Next.js 專案基本設定，讓後續開發體驗更流暢、專案結構更易讀。包含用 .nvmrc 鎖定 Node.js 版本、導入 ESLint 和 Prettier、使用 /src 資料夾、設定 Absolute Import]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=ESLint%E3%80%81Prettier%E3%80%81TypeScript%20%E7%AD%89%20Next.js%20%E5%B0%88%E6%A1%88%E5%9F%BA%E7%A4%8E%E8%A8%AD%E5%AE%9A%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2304&amp;desc=Next.js%20%E5%B0%88%E6%A1%88%E5%9F%BA%E6%9C%AC%E8%A8%AD%E5%AE%9A%EF%BC%8C%E8%AE%93%E5%BE%8C%E7%BA%8C%E9%96%8B%E7%99%BC%E9%AB%94%E9%A9%97%E6%9B%B4%E6%B5%81%E6%9A%A2%E3%80%81%E5%B0%88%E6%A1%88%E7%B5%90%E6%A7%8B%E6%9B%B4%E6%98%93%E8%AE%80%E3%80%82%E5%8C%85%E5%90%AB%E7%94%A8%20.nvmrc%20%E9%8E%96%E5%AE%9A%20Node.js%20%E7%89%88%E6%9C%AC%E3%80%81%E5%B0%8E%E5%85%A5%20ESLint%20%E5%92%8C%20Prettier%E3%80%81%E4%BD%BF%E7%94%A8%20%2Fsrc%20%E8%B3%87%E6%96%99%E5%A4%BE%E3%80%81%E8%A8%AD%E5%AE%9A%20Absolute%20Import" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Deploying a Next.js Project on Vercel Platform - Modern Next.js Blog Series #03]]></title>
            <link>https://easonchang.com/posts/nextjs-to-vercel</link>
            <guid>https://easonchang.com/posts/nextjs-to-vercel</guid>
            <pubDate>Sun, 18 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[An introduction to the Vercel hosting platform, deploying the Next.js empty project from the previous article on Vercel, and integrating GitHub CI/CD]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Deploying%20a%20Next.js%20Project%20on%20Vercel%20Platform%20-%20Modern%20Next.js%20Blog%20Series%20%2303&amp;desc=An%20introduction%20to%20the%20Vercel%20hosting%20platform%2C%20deploying%20the%20Next.js%20empty%20project%20from%20the%20previous%20article%20on%20Vercel%2C%20and%20integrating%20GitHub%20CI%2FCD" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[將 Next.js 專案部署上 Vercel 平台 - Modern Next.js Blog 系列 #03]]></title>
            <link>https://easonchang.com/posts/nextjs-to-vercel</link>
            <guid>https://easonchang.com/posts/nextjs-to-vercel</guid>
            <pubDate>Sun, 18 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Vercel 架站平台介紹、將上一篇的 Next.js 空專案部署上 Vercel，並串接 Github CI/CD]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E5%B0%87%20Next.js%20%E5%B0%88%E6%A1%88%E9%83%A8%E7%BD%B2%E4%B8%8A%20Vercel%20%E5%B9%B3%E5%8F%B0%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2303&amp;desc=Vercel%20%E6%9E%B6%E7%AB%99%E5%B9%B3%E5%8F%B0%E4%BB%8B%E7%B4%B9%E3%80%81%E5%B0%87%E4%B8%8A%E4%B8%80%E7%AF%87%E7%9A%84%20Next.js%20%E7%A9%BA%E5%B0%88%E6%A1%88%E9%83%A8%E7%BD%B2%E4%B8%8A%20Vercel%EF%BC%8C%E4%B8%A6%E4%B8%B2%E6%8E%A5%20Github%20CI%2FCD" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Introduction to Front-End Development Ecosystem & Setting Up a Next.js Project - Modern Next.js Blog Series #02]]></title>
            <link>https://easonchang.com/posts/frontend-intro-create-nextjs</link>
            <guid>https://easonchang.com/posts/frontend-intro-create-nextjs</guid>
            <pubDate>Sat, 17 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Before starting the blog, let's understand the front-end development ecosystem, install the JS package managers npm and pnpm, and set up a basic Next.js front-end project]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Introduction%20to%20Front-End%20Development%20Ecosystem%20%26%20Setting%20Up%20a%20Next.js%20Project%20-%20Modern%20Next.js%20Blog%20Series%20%2302&amp;desc=Before%20starting%20the%20blog%2C%20let's%20understand%20the%20front-end%20development%20ecosystem%2C%20install%20the%20JS%20package%20managers%20npm%20and%20pnpm%2C%20and%20set%20up%20a%20basic%20Next.js%20front-end%20project" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[簡介前端開發生態＆建立 Next.js 專案 - Modern Next.js Blog 系列 #02]]></title>
            <link>https://easonchang.com/posts/frontend-intro-create-nextjs</link>
            <guid>https://easonchang.com/posts/frontend-intro-create-nextjs</guid>
            <pubDate>Sat, 17 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[開幹部落格之前，先來了解前端開發生態、安裝 JS 套件管理器 npm 及 pnpm，並建立基礎 Next.js 前端專案]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E7%B0%A1%E4%BB%8B%E5%89%8D%E7%AB%AF%E9%96%8B%E7%99%BC%E7%94%9F%E6%85%8B%EF%BC%86%E5%BB%BA%E7%AB%8B%20Next.js%20%E5%B0%88%E6%A1%88%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2302&amp;desc=%E9%96%8B%E5%B9%B9%E9%83%A8%E8%90%BD%E6%A0%BC%E4%B9%8B%E5%89%8D%EF%BC%8C%E5%85%88%E4%BE%86%E4%BA%86%E8%A7%A3%E5%89%8D%E7%AB%AF%E9%96%8B%E7%99%BC%E7%94%9F%E6%85%8B%E3%80%81%E5%AE%89%E8%A3%9D%20JS%20%E5%A5%97%E4%BB%B6%E7%AE%A1%E7%90%86%E5%99%A8%20npm%20%E5%8F%8A%20pnpm%EF%BC%8C%E4%B8%A6%E5%BB%BA%E7%AB%8B%E5%9F%BA%E7%A4%8E%20Next.js%20%E5%89%8D%E7%AB%AF%E5%B0%88%E6%A1%88" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Building a Stunning Personal Blog from Scratch Series Introduction - Modern Next.js Blog Series #01]]></title>
            <link>https://easonchang.com/posts/modern-nextjs-blog-intro</link>
            <guid>https://easonchang.com/posts/modern-nextjs-blog-intro</guid>
            <pubDate>Fri, 16 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this series, we will start from scratch and use the most modern front-end technologies to build your stunning personal blog over 30 days! Introducing the target audience, result demo, content planning, and the technologies used]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Building%20a%20Stunning%20Personal%20Blog%20from%20Scratch%20Series%20Introduction%20-%20Modern%20Next.js%20Blog%20Series%20%2301&amp;desc=In%20this%20series%2C%20we%20will%20start%20from%20scratch%20and%20use%20the%20most%20modern%20front-end%20technologies%20to%20build%20your%20stunning%20personal%20blog%20over%2030%20days!%20Introducing%20the%20target%20audience%2C%20result%20demo%2C%20content%20planning%2C%20and%20the%20technologies%20used" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[「從零開始打造炫砲個人部落格」系列簡介 - Modern Next.js Blog 系列 #01]]></title>
            <link>https://easonchang.com/posts/modern-nextjs-blog-intro</link>
            <guid>https://easonchang.com/posts/modern-nextjs-blog-intro</guid>
            <pubDate>Fri, 16 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[這系列我們會在 30 天內從零開始，用最現代的前端技術，做出你的炫砲個人部落格！簡介本系列的目標讀者、成果 Demo、內容規劃、及用到的技術]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E3%80%8C%E5%BE%9E%E9%9B%B6%E9%96%8B%E5%A7%8B%E6%89%93%E9%80%A0%E7%82%AB%E7%A0%B2%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%E3%80%8D%E7%B3%BB%E5%88%97%E7%B0%A1%E4%BB%8B%20-%20Modern%20Next.js%20Blog%20%E7%B3%BB%E5%88%97%20%2301&amp;desc=%E9%80%99%E7%B3%BB%E5%88%97%E6%88%91%E5%80%91%E6%9C%83%E5%9C%A8%2030%20%E5%A4%A9%E5%85%A7%E5%BE%9E%E9%9B%B6%E9%96%8B%E5%A7%8B%EF%BC%8C%E7%94%A8%E6%9C%80%E7%8F%BE%E4%BB%A3%E7%9A%84%E5%89%8D%E7%AB%AF%E6%8A%80%E8%A1%93%EF%BC%8C%E5%81%9A%E5%87%BA%E4%BD%A0%E7%9A%84%E7%82%AB%E7%A0%B2%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%EF%BC%81%E7%B0%A1%E4%BB%8B%E6%9C%AC%E7%B3%BB%E5%88%97%E7%9A%84%E7%9B%AE%E6%A8%99%E8%AE%80%E8%80%85%E3%80%81%E6%88%90%E6%9E%9C%20Demo%E3%80%81%E5%85%A7%E5%AE%B9%E8%A6%8F%E5%8A%83%E3%80%81%E5%8F%8A%E7%94%A8%E5%88%B0%E7%9A%84%E6%8A%80%E8%A1%93" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[解決 CORS 跨域請求問題，使用 Create React App 內建 Proxy 繞過它]]></title>
            <link>https://easonchang.com/posts/create-react-app-proxy</link>
            <guid>https://easonchang.com/posts/create-react-app-proxy</guid>
            <pubDate>Fri, 12 Aug 2022 20:58:00 GMT</pubDate>
            <description><![CDATA[如何設定 Create React App 內建的 Proxy server，來在開發階段繞過呼叫 API 遇到的 Cross-Origin Resource Sharing (CORS) 問題]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E8%A7%A3%E6%B1%BA%20CORS%20%E8%B7%A8%E5%9F%9F%E8%AB%8B%E6%B1%82%E5%95%8F%E9%A1%8C%EF%BC%8C%E4%BD%BF%E7%94%A8%20Create%20React%20App%20%E5%85%A7%E5%BB%BA%20Proxy%20%E7%B9%9E%E9%81%8E%E5%AE%83&amp;desc=%E5%A6%82%E4%BD%95%E8%A8%AD%E5%AE%9A%20Create%20React%20App%20%E5%85%A7%E5%BB%BA%E7%9A%84%20Proxy%20server%EF%BC%8C%E4%BE%86%E5%9C%A8%E9%96%8B%E7%99%BC%E9%9A%8E%E6%AE%B5%E7%B9%9E%E9%81%8E%E5%91%BC%E5%8F%AB%20API%20%E9%81%87%E5%88%B0%E7%9A%84%20Cross-Origin%20Resource%20Sharing%20(CORS)%20%E5%95%8F%E9%A1%8C" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[何謂演算法技術面試？讀《Cracking the Coding Interview（提升程式設計師的面試力）》]]></title>
            <link>https://easonchang.com/posts/cracking-the-coding-interview</link>
            <guid>https://easonchang.com/posts/cracking-the-coding-interview</guid>
            <pubDate>Sun, 24 Jul 2022 22:16:00 GMT</pubDate>
            <description><![CDATA[軟體工程師面試 FANNG 大公司時，必不可少的演算法面試，到底在考些什麼？該如何準備？一起來讀面試聖經《Cracking the Coding Interview（提升程式設計師的面試力）》]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%BD%95%E8%AC%82%E6%BC%94%E7%AE%97%E6%B3%95%E6%8A%80%E8%A1%93%E9%9D%A2%E8%A9%A6%EF%BC%9F%E8%AE%80%E3%80%8ACracking%20the%20Coding%20Interview%EF%BC%88%E6%8F%90%E5%8D%87%E7%A8%8B%E5%BC%8F%E8%A8%AD%E8%A8%88%E5%B8%AB%E7%9A%84%E9%9D%A2%E8%A9%A6%E5%8A%9B%EF%BC%89%E3%80%8B&amp;desc=%E8%BB%9F%E9%AB%94%E5%B7%A5%E7%A8%8B%E5%B8%AB%E9%9D%A2%E8%A9%A6%20FANNG%20%E5%A4%A7%E5%85%AC%E5%8F%B8%E6%99%82%EF%BC%8C%E5%BF%85%E4%B8%8D%E5%8F%AF%E5%B0%91%E7%9A%84%E6%BC%94%E7%AE%97%E6%B3%95%E9%9D%A2%E8%A9%A6%EF%BC%8C%E5%88%B0%E5%BA%95%E5%9C%A8%E8%80%83%E4%BA%9B%E4%BB%80%E9%BA%BC%EF%BC%9F%E8%A9%B2%E5%A6%82%E4%BD%95%E6%BA%96%E5%82%99%EF%BC%9F%E4%B8%80%E8%B5%B7%E4%BE%86%E8%AE%80%E9%9D%A2%E8%A9%A6%E8%81%96%E7%B6%93%E3%80%8ACracking%20the%20Coding%20Interview%EF%BC%88%E6%8F%90%E5%8D%87%E7%A8%8B%E5%BC%8F%E8%A8%AD%E8%A8%88%E5%B8%AB%E7%9A%84%E9%9D%A2%E8%A9%A6%E5%8A%9B%EF%BC%89%E3%80%8B" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[不要再從舊檔案複製貼上了！使用 Hygen 快速建立 Blog 新文章 Markdown 檔案]]></title>
            <link>https://easonchang.com/posts/hygen-generate-new-post</link>
            <guid>https://easonchang.com/posts/hygen-generate-new-post</guid>
            <pubDate>Mon, 11 Apr 2022 20:44:00 GMT</pubDate>
            <description><![CDATA[我在個人部落格導入了 Hygen 程式碼產生器，讓我能使用 hygen post new 指令，快速建立新文章草稿 .mdx 檔案，簡化繁瑣步驟。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=%E4%B8%8D%E8%A6%81%E5%86%8D%E5%BE%9E%E8%88%8A%E6%AA%94%E6%A1%88%E8%A4%87%E8%A3%BD%E8%B2%BC%E4%B8%8A%E4%BA%86%EF%BC%81%E4%BD%BF%E7%94%A8%20Hygen%20%E5%BF%AB%E9%80%9F%E5%BB%BA%E7%AB%8B%20Blog%20%E6%96%B0%E6%96%87%E7%AB%A0%20Markdown%20%E6%AA%94%E6%A1%88&amp;desc=%E6%88%91%E5%9C%A8%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%E5%B0%8E%E5%85%A5%E4%BA%86%20Hygen%20%E7%A8%8B%E5%BC%8F%E7%A2%BC%E7%94%A2%E7%94%9F%E5%99%A8%EF%BC%8C%E8%AE%93%E6%88%91%E8%83%BD%E4%BD%BF%E7%94%A8%20hygen%20post%20new%20%E6%8C%87%E4%BB%A4%EF%BC%8C%E5%BF%AB%E9%80%9F%E5%BB%BA%E7%AB%8B%E6%96%B0%E6%96%87%E7%AB%A0%E8%8D%89%E7%A8%BF%20.mdx%20%E6%AA%94%E6%A1%88%EF%BC%8C%E7%B0%A1%E5%8C%96%E7%B9%81%E7%91%A3%E6%AD%A5%E9%A9%9F%E3%80%82" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Product Hunt Today - An Automatic Twitter Bot for Generating Short Video Introductions to Popular Product Hunt Projects]]></title>
            <link>https://easonchang.com/posts/product-hunt-today</link>
            <guid>https://easonchang.com/posts/product-hunt-today</guid>
            <pubDate>Thu, 07 Apr 2022 20:00:00 GMT</pubDate>
            <description><![CDATA[A fully automated Twitter bot. Crawls popular projects daily through the Product Hunt API, generates short videos with React.js Remotion, and publishes tweets via the Twitter API.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/product-hunt-today/product-hunt-today-tweet-wide.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Product Hunt Today 專案 - 自動產生短影片介紹熱門 Product Hunt 專案的推特機器人]]></title>
            <link>https://easonchang.com/posts/product-hunt-today</link>
            <guid>https://easonchang.com/posts/product-hunt-today</guid>
            <pubDate>Thu, 07 Apr 2022 20:00:00 GMT</pubDate>
            <description><![CDATA[全自動的推特機器人。每日透過 Product Hunt API 爬取熱門專案、React.js Remotion 產生短影片，Twitter API 發佈到貼文到推特上。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/product-hunt-today/product-hunt-today-tweet-wide.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Day12 用 TailwindCSS 切版部落格首頁，顯示 WordPress 文章列表]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day12-tailwind-layout</link>
            <guid>https://easonchang.com/posts/2021-ironman-day12-tailwind-layout</guid>
            <pubDate>Sun, 20 Mar 2022 15:40:00 GMT</pubDate>
            <description><![CDATA[使用 Tailwind CSS 做點簡單切版，美化文章列表的樣式！]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day12%20%E7%94%A8%20TailwindCSS%20%E5%88%87%E7%89%88%E9%83%A8%E8%90%BD%E6%A0%BC%E9%A6%96%E9%A0%81%EF%BC%8C%E9%A1%AF%E7%A4%BA%20WordPress%20%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8&amp;desc=%E4%BD%BF%E7%94%A8%20Tailwind%20CSS%20%E5%81%9A%E9%BB%9E%E7%B0%A1%E5%96%AE%E5%88%87%E7%89%88%EF%BC%8C%E7%BE%8E%E5%8C%96%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8%E7%9A%84%E6%A8%A3%E5%BC%8F%EF%BC%81" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day11 TailwindCSS 介紹，在 Next.js 專案安裝 TailwindCSS]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day11-tailwind-install</link>
            <guid>https://easonchang.com/posts/2021-ironman-day11-tailwind-install</guid>
            <pubDate>Sun, 20 Mar 2022 15:30:00 GMT</pubDate>
            <description><![CDATA[安裝 Tailwind CSS 這套 CSS 框架在 Next.js，準備做點簡單切版，美化文章列表的樣式]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day11%20TailwindCSS%20%E4%BB%8B%E7%B4%B9%EF%BC%8C%E5%9C%A8%20Next.js%20%E5%B0%88%E6%A1%88%E5%AE%89%E8%A3%9D%20TailwindCSS&amp;desc=%E5%AE%89%E8%A3%9D%20Tailwind%20CSS%20%E9%80%99%E5%A5%97%20CSS%20%E6%A1%86%E6%9E%B6%E5%9C%A8%20Next.js%EF%BC%8C%E6%BA%96%E5%82%99%E5%81%9A%E9%BB%9E%E7%B0%A1%E5%96%AE%E5%88%87%E7%89%88%EF%BC%8C%E7%BE%8E%E5%8C%96%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8%E7%9A%84%E6%A8%A3%E5%BC%8F" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day10 在 Next.js 安裝 apollo-graphql，串接 WordPress GraphQL API（下）]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day10-apollo-graphql-post-list</link>
            <guid>https://easonchang.com/posts/2021-ironman-day10-apollo-graphql-post-list</guid>
            <pubDate>Sun, 20 Mar 2022 15:20:00 GMT</pubDate>
            <description><![CDATA[在 Next.js 使用 ApolloClient 串接 WordPress GraphQL API，抓取文章列表資料，顯示在部落格首頁]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day10%20%E5%9C%A8%20Next.js%20%E5%AE%89%E8%A3%9D%20apollo-graphql%EF%BC%8C%E4%B8%B2%E6%8E%A5%20WordPress%20GraphQL%20API%EF%BC%88%E4%B8%8B%EF%BC%89&amp;desc=%E5%9C%A8%20Next.js%20%E4%BD%BF%E7%94%A8%20ApolloClient%20%E4%B8%B2%E6%8E%A5%20WordPress%20GraphQL%20API%EF%BC%8C%E6%8A%93%E5%8F%96%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8%E8%B3%87%E6%96%99%EF%BC%8C%E9%A1%AF%E7%A4%BA%E5%9C%A8%E9%83%A8%E8%90%BD%E6%A0%BC%E9%A6%96%E9%A0%81" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day9 在 Next.js 安裝 apollo-graphql，串接 WordPress GraphQL API（上）]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day9-apollo-graphql-install</link>
            <guid>https://easonchang.com/posts/2021-ironman-day9-apollo-graphql-install</guid>
            <pubDate>Sun, 20 Mar 2022 15:10:00 GMT</pubDate>
            <description><![CDATA[在 Next.js 安裝 apollo-graphql package，將用來串接 WordPress 的 GraphQL API]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day9%20%E5%9C%A8%20Next.js%20%E5%AE%89%E8%A3%9D%20apollo-graphql%EF%BC%8C%E4%B8%B2%E6%8E%A5%20WordPress%20GraphQL%20API%EF%BC%88%E4%B8%8A%EF%BC%89&amp;desc=%E5%9C%A8%20Next.js%20%E5%AE%89%E8%A3%9D%20apollo-graphql%20package%EF%BC%8C%E5%B0%87%E7%94%A8%E4%BE%86%E4%B8%B2%E6%8E%A5%20WordPress%20%E7%9A%84%20GraphQL%20API" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day8 GraphQL 介紹、在WordPress 上安裝 WPGraphQL plugin]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day8-wpgraphql</link>
            <guid>https://easonchang.com/posts/2021-ironman-day8-wpgraphql</guid>
            <pubDate>Sun, 20 Mar 2022 15:00:00 GMT</pubDate>
            <description><![CDATA[在 WordPress 上安裝 WPGraphQL plugin，建立 GraphQL API，提供 Next.js 前端抓取文章資料]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day8%20GraphQL%20%E4%BB%8B%E7%B4%B9%E3%80%81%E5%9C%A8WordPress%20%E4%B8%8A%E5%AE%89%E8%A3%9D%20WPGraphQL%20plugin&amp;desc=%E5%9C%A8%20WordPress%20%E4%B8%8A%E5%AE%89%E8%A3%9D%20WPGraphQL%20plugin%EF%BC%8C%E5%BB%BA%E7%AB%8B%20GraphQL%20API%EF%BC%8C%E6%8F%90%E4%BE%9B%20Next.js%20%E5%89%8D%E7%AB%AF%E6%8A%93%E5%8F%96%E6%96%87%E7%AB%A0%E8%B3%87%E6%96%99" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day7 使用 Vercel 發布我們的 Next.js 網站，搭配 Github 實現自動部署]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day7-vercel-publish</link>
            <guid>https://easonchang.com/posts/2021-ironman-day7-vercel-publish</guid>
            <pubDate>Sun, 20 Mar 2022 14:50:00 GMT</pubDate>
            <description><![CDATA[將 Next.js 專案發布到 Vercel，在線上看到你的成果，並且使用 Github 自動部署。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day7%20%E4%BD%BF%E7%94%A8%20Vercel%20%E7%99%BC%E5%B8%83%E6%88%91%E5%80%91%E7%9A%84%20Next.js%20%E7%B6%B2%E7%AB%99%EF%BC%8C%E6%90%AD%E9%85%8D%20Github%20%E5%AF%A6%E7%8F%BE%E8%87%AA%E5%8B%95%E9%83%A8%E7%BD%B2&amp;desc=%E5%B0%87%20Next.js%20%E5%B0%88%E6%A1%88%E7%99%BC%E5%B8%83%E5%88%B0%20Vercel%EF%BC%8C%E5%9C%A8%E7%B7%9A%E4%B8%8A%E7%9C%8B%E5%88%B0%E4%BD%A0%E7%9A%84%E6%88%90%E6%9E%9C%EF%BC%8C%E4%B8%A6%E4%B8%94%E4%BD%BF%E7%94%A8%20Github%20%E8%87%AA%E5%8B%95%E9%83%A8%E7%BD%B2%E3%80%82" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day6 建立 Next.js 專案 - 使用 create-next-app]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day6-create-next-app</link>
            <guid>https://easonchang.com/posts/2021-ironman-day6-create-next-app</guid>
            <pubDate>Sun, 20 Mar 2022 14:40:00 GMT</pubDate>
            <description><![CDATA[使用 create-next-app 建立 Next.js 專案，目標是能在自己電腦上成功開啟 Next.js 網頁。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day6%20%E5%BB%BA%E7%AB%8B%20Next.js%20%E5%B0%88%E6%A1%88%20-%20%E4%BD%BF%E7%94%A8%20create-next-app&amp;desc=%E4%BD%BF%E7%94%A8%20create-next-app%20%E5%BB%BA%E7%AB%8B%20Next.js%20%E5%B0%88%E6%A1%88%EF%BC%8C%E7%9B%AE%E6%A8%99%E6%98%AF%E8%83%BD%E5%9C%A8%E8%87%AA%E5%B7%B1%E9%9B%BB%E8%85%A6%E4%B8%8A%E6%88%90%E5%8A%9F%E9%96%8B%E5%95%9F%20Next.js%20%E7%B6%B2%E9%A0%81%E3%80%82" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day5 Next.js 介紹 - Production-ready 的 React.js 框架]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day5-nextjs-intro</link>
            <guid>https://easonchang.com/posts/2021-ironman-day5-nextjs-intro</guid>
            <pubDate>Sun, 20 Mar 2022 14:30:00 GMT</pubDate>
            <description><![CDATA[Next.js 是高級版的 React.js 全端開發框架，支援 Server Side Rendering 等各種渲染策略，大幅提升 DX 開發者體驗及 UX 網站訪客體驗，是非常值得學習的技術。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day5%20Next.js%20%E4%BB%8B%E7%B4%B9%20-%20Production-ready%20%E7%9A%84%20React.js%20%E6%A1%86%E6%9E%B6&amp;desc=Next.js%20%E6%98%AF%E9%AB%98%E7%B4%9A%E7%89%88%E7%9A%84%20React.js%20%E5%85%A8%E7%AB%AF%E9%96%8B%E7%99%BC%E6%A1%86%E6%9E%B6%EF%BC%8C%E6%94%AF%E6%8F%B4%20Server%20Side%20Rendering%20%E7%AD%89%E5%90%84%E7%A8%AE%E6%B8%B2%E6%9F%93%E7%AD%96%E7%95%A5%EF%BC%8C%E5%A4%A7%E5%B9%85%E6%8F%90%E5%8D%87%20DX%20%E9%96%8B%E7%99%BC%E8%80%85%E9%AB%94%E9%A9%97%E5%8F%8A%20UX%20%E7%B6%B2%E7%AB%99%E8%A8%AA%E5%AE%A2%E9%AB%94%E9%A9%97%EF%BC%8C%E6%98%AF%E9%9D%9E%E5%B8%B8%E5%80%BC%E5%BE%97%E5%AD%B8%E7%BF%92%E7%9A%84%E6%8A%80%E8%A1%93%E3%80%82" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day4 WordPress 介紹，基礎設定與發文]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day4-wordpress-post</link>
            <guid>https://easonchang.com/posts/2021-ironman-day4-wordpress-post</guid>
            <pubDate>Sun, 20 Mar 2022 14:20:00 GMT</pubDate>
            <description><![CDATA[設定個人部落格 WordPress 的基礎設定，完成文章發布]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day4%20WordPress%20%E4%BB%8B%E7%B4%B9%EF%BC%8C%E5%9F%BA%E7%A4%8E%E8%A8%AD%E5%AE%9A%E8%88%87%E7%99%BC%E6%96%87&amp;desc=%E8%A8%AD%E5%AE%9A%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%20WordPress%20%E7%9A%84%E5%9F%BA%E7%A4%8E%E8%A8%AD%E5%AE%9A%EF%BC%8C%E5%AE%8C%E6%88%90%E6%96%87%E7%AB%A0%E7%99%BC%E5%B8%83" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day3 WordPress 架設 - 尋找最適合我們的 WordPress 架站平台 BlueHost]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day3-wordpress-hosting</link>
            <guid>https://easonchang.com/posts/2021-ironman-day3-wordpress-hosting</guid>
            <pubDate>Sun, 20 Mar 2022 14:10:00 GMT</pubDate>
            <description><![CDATA[為我們的個人部落格尋找 WordPress CMS 託管平台，選擇 CP 值最高的 BlueHost 實作，手把手完成架設]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day3%20WordPress%20%E6%9E%B6%E8%A8%AD%20-%20%E5%B0%8B%E6%89%BE%E6%9C%80%E9%81%A9%E5%90%88%E6%88%91%E5%80%91%E7%9A%84%20WordPress%20%E6%9E%B6%E7%AB%99%E5%B9%B3%E5%8F%B0%20BlueHost&amp;desc=%E7%82%BA%E6%88%91%E5%80%91%E7%9A%84%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%E5%B0%8B%E6%89%BE%20WordPress%20CMS%20%E8%A8%97%E7%AE%A1%E5%B9%B3%E5%8F%B0%EF%BC%8C%E9%81%B8%E6%93%87%20CP%20%E5%80%BC%E6%9C%80%E9%AB%98%E7%9A%84%20BlueHost%20%E5%AF%A6%E4%BD%9C%EF%BC%8C%E6%89%8B%E6%8A%8A%E6%89%8B%E5%AE%8C%E6%88%90%E6%9E%B6%E8%A8%AD" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day2 個人部落格需求規劃 - Next.js Frontend + Headless WordPress]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day2-personal-blog-requirement</link>
            <guid>https://easonchang.com/posts/2021-ironman-day2-personal-blog-requirement</guid>
            <pubDate>Sun, 20 Mar 2022 14:00:00 GMT</pubDate>
            <description><![CDATA[這系列文章我們會實作個人部落格，使用 Next.js 前端搭配 Headless WordPress as CMS 後端。改善 DX 開發者體驗、編輯者體驗、UX 讀者體驗、SEO 搜尋引擎優化]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day2%20%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%E9%9C%80%E6%B1%82%E8%A6%8F%E5%8A%83%20-%20Next.js%20Frontend%20%2B%20Headless%20WordPress&amp;desc=%E9%80%99%E7%B3%BB%E5%88%97%E6%96%87%E7%AB%A0%E6%88%91%E5%80%91%E6%9C%83%E5%AF%A6%E4%BD%9C%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%EF%BC%8C%E4%BD%BF%E7%94%A8%20Next.js%20%E5%89%8D%E7%AB%AF%E6%90%AD%E9%85%8D%20Headless%20WordPress%20as%20CMS%20%E5%BE%8C%E7%AB%AF%E3%80%82%E6%94%B9%E5%96%84%20DX%20%E9%96%8B%E7%99%BC%E8%80%85%E9%AB%94%E9%A9%97%E3%80%81%E7%B7%A8%E8%BC%AF%E8%80%85%E9%AB%94%E9%A9%97%E3%80%81UX%20%E8%AE%80%E8%80%85%E9%AB%94%E9%A9%97%E3%80%81SEO%20%E6%90%9C%E5%B0%8B%E5%BC%95%E6%93%8E%E5%84%AA%E5%8C%96" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[Day1 用 Next.js 拆分 Wordpress 前端 - 系列簡介]]></title>
            <link>https://easonchang.com/posts/2021-ironman-day1-nextjs-wordpress-intro</link>
            <guid>https://easonchang.com/posts/2021-ironman-day1-nextjs-wordpress-intro</guid>
            <pubDate>Sun, 17 Oct 2021 14:54:00 GMT</pubDate>
            <description><![CDATA[這系列文章我會詳實紀錄我用 Next.js 拆分 WordPress 前端的過程，比重大概 30% 會在 WordPress 調整，70% 會在 Next.js 新專案建立、畫面切版、功能實現。會以建立個人部落格為主題，從最初 WordPress 架設，到 Next.js 優化]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/api/og?title=Day1%20%E7%94%A8%20Next.js%20%E6%8B%86%E5%88%86%20Wordpress%20%E5%89%8D%E7%AB%AF%20-%20%E7%B3%BB%E5%88%97%E7%B0%A1%E4%BB%8B&amp;desc=%E9%80%99%E7%B3%BB%E5%88%97%E6%96%87%E7%AB%A0%E6%88%91%E6%9C%83%E8%A9%B3%E5%AF%A6%E7%B4%80%E9%8C%84%E6%88%91%E7%94%A8%20Next.js%20%E6%8B%86%E5%88%86%20WordPress%20%E5%89%8D%E7%AB%AF%E7%9A%84%E9%81%8E%E7%A8%8B%EF%BC%8C%E6%AF%94%E9%87%8D%E5%A4%A7%E6%A6%82%2030%25%20%E6%9C%83%E5%9C%A8%20WordPress%20%E8%AA%BF%E6%95%B4%EF%BC%8C70%25%20%E6%9C%83%E5%9C%A8%20Next.js%20%E6%96%B0%E5%B0%88%E6%A1%88%E5%BB%BA%E7%AB%8B%E3%80%81%E7%95%AB%E9%9D%A2%E5%88%87%E7%89%88%E3%80%81%E5%8A%9F%E8%83%BD%E5%AF%A6%E7%8F%BE%E3%80%82%E6%9C%83%E4%BB%A5%E5%BB%BA%E7%AB%8B%E5%80%8B%E4%BA%BA%E9%83%A8%E8%90%BD%E6%A0%BC%E7%82%BA%E4%B8%BB%E9%A1%8C%EF%BC%8C%E5%BE%9E%E6%9C%80%E5%88%9D%20WordPress%20%E6%9E%B6%E8%A8%AD%EF%BC%8C%E5%88%B0%20Next.js%20%E5%84%AA%E5%8C%96" length="0" type="image//api/og"/>
        </item>
        <item>
            <title><![CDATA[設定 Gatsby 部落格文章的舊路徑重導向，使用 gatsby-redirect-from 插件]]></title>
            <link>https://easonchang.com/posts/gatsby-redirect-from</link>
            <guid>https://easonchang.com/posts/gatsby-redirect-from</guid>
            <pubDate>Sun, 14 Feb 2021 13:23:00 GMT</pubDate>
            <description><![CDATA[新的 Gatsby 部落格有自己一套路由設定，與原先 Hexo 不同。於是我使用 gatsby-redirect-from plugin 將文章舊路徑重導向。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/2021-02-14-gatsby-redirect-from/gatsby-redirect-from.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[部落格搬遷紀錄，用 Gatsby.js 取代 Hexo]]></title>
            <link>https://easonchang.com/posts/migrate-to-gatsby</link>
            <guid>https://easonchang.com/posts/migrate-to-gatsby</guid>
            <pubDate>Sat, 13 Feb 2021 05:57:00 GMT</pubDate>
            <description><![CDATA[當完兵過年期間閒的蛋疼，想要嘗試新技術，於是決定用 Gatsby.js 來重架部落格啦！]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/2021-02-13-migrate-to-gatsby/new-blog.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【Project】Sci-Fi Style Trophy]]></title>
            <link>https://easonchang.com/posts/scifi-trophy</link>
            <guid>https://easonchang.com/posts/scifi-trophy</guid>
            <pubDate>Wed, 04 Apr 2018 00:31:00 GMT</pubDate>
            <description><![CDATA[A sci-fi style trophy I was commissioned to make in November 2017 by the officials of the Hsinchu Hackathon, intended to showcase a sense of technology and the creativity of makers.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/scifi-trophy/scifi-trophy-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【專案】科幻風造型獎盃]]></title>
            <link>https://easonchang.com/posts/scifi-trophy</link>
            <guid>https://easonchang.com/posts/scifi-trophy</guid>
            <pubDate>Wed, 04 Apr 2018 00:31:00 GMT</pubDate>
            <description><![CDATA[科幻風造型獎盃，是我在2017年11月時，受新竹黑客松官方委託打造的，希望能呈現出科技感、及體現創客們的創造力。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/scifi-trophy/scifi-trophy-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[[Project] Winster: The Smart Wine Brewing Master]]></title>
            <link>https://easonchang.com/posts/winster</link>
            <guid>https://easonchang.com/posts/winster</guid>
            <pubDate>Mon, 02 Apr 2018 16:56:00 GMT</pubDate>
            <description><![CDATA[The "Winster Smart Wine Brewing Master" is a platform designed to assist in wine brewing and condition monitoring, offering variety and origin analysis for professional brewers and small-scale wineries, as well as error detection during the brewing process.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/winster/winster-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【專案】智慧釀藏酒大師 Winster]]></title>
            <link>https://easonchang.com/posts/winster</link>
            <guid>https://easonchang.com/posts/winster</guid>
            <pubDate>Mon, 02 Apr 2018 16:56:00 GMT</pubDate>
            <description><![CDATA[「智慧釀藏酒大師 Winster」，是一套幫助您釀酒和控管酒況的釀藏酒平台。主要能夠提供專業釀酒玩家、小型釀酒企業，酒的品種以及產地的分析和釀酒過程的錯誤偵測。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/winster/winster-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[[Project] Smart Gloves]]></title>
            <link>https://easonchang.com/posts/smart-gloves</link>
            <guid>https://easonchang.com/posts/smart-gloves</guid>
            <pubDate>Sun, 01 Apr 2018 22:27:00 GMT</pubDate>
            <description><![CDATA[Smart Gloves are designed to replace keyboards and mice, becoming the next generation of human-computer interface devices. They allow users to control all aspects of life, such as smart home appliances, as game controllers, playing virtual instruments, etc.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/smart-gloves/smart-gloves-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【專案】智慧手套 Smart Gloves]]></title>
            <link>https://easonchang.com/posts/smart-gloves</link>
            <guid>https://easonchang.com/posts/smart-gloves</guid>
            <pubDate>Sun, 01 Apr 2018 22:27:00 GMT</pubDate>
            <description><![CDATA[智慧手套旨在取代鍵盤及滑鼠，成為下個世代的人機介面裝置，希望使用者能透過智慧手套，操控生活中的所有事物，例如：控制智慧家電、作為遊戲控制器、演奏虛擬樂器等。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/smart-gloves/smart-gloves-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【Project】SigmaGO Smart Guide Dog]]></title>
            <link>https://easonchang.com/posts/sigmago</link>
            <guid>https://easonchang.com/posts/sigmago</guid>
            <pubDate>Fri, 30 Mar 2018 16:40:00 GMT</pubDate>
            <description><![CDATA[The project aims to develop a low-cost smart guide dog to replace the traditional guide dogs that require extensive training, benefiting the lives of the visually impaired.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/sigmago/sigmago-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[【專案】SigmaGO 智慧導盲犬]]></title>
            <link>https://easonchang.com/posts/sigmago</link>
            <guid>https://easonchang.com/posts/sigmago</guid>
            <pubDate>Fri, 30 Mar 2018 16:40:00 GMT</pubDate>
            <description><![CDATA[專案目的是開發低成本的智慧導盲犬，取代需要龐大成本訓練的傳統導盲犬，造福盲人朋友的生活。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://easonchang.com/images/sigmago/sigmago-cover.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Botkit初體驗，寫一隻Slack聊天機器人吧！]]></title>
            <link>https://easonchang.com/posts/slack-bot-with-botkit</link>
            <guid>https://easonchang.com/posts/slack-bot-with-botkit</guid>
            <pubDate>Fri, 10 Mar 2017 02:57:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/wnDgpFG.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[開發藍芽鋼琴APP！使用AppInventor結合Arduino、HC05、與蜂鳴器]]></title>
            <link>https://easonchang.com/posts/bluetooth-keyboard</link>
            <guid>https://easonchang.com/posts/bluetooth-keyboard</guid>
            <pubDate>Sun, 05 Mar 2017 23:00:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/HXjQPNQ.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[《為什麼聰明人都用方格筆記本》，用筆記術變身強者吧]]></title>
            <link>https://easonchang.com/posts/grid-note</link>
            <guid>https://easonchang.com/posts/grid-note</guid>
            <pubDate>Tue, 13 Dec 2016 05:44:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/1kjCMC5.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【閱讀筆記】《魅力學》，培養魅力的第一本書]]></title>
            <link>https://easonchang.com/posts/myth-of-charisma</link>
            <guid>https://easonchang.com/posts/myth-of-charisma</guid>
            <pubDate>Fri, 18 Nov 2016 02:37:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/PNh6wWF.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[在MacOS使用putty key進行ssh連線]]></title>
            <link>https://easonchang.com/posts/using-ssh-with-putty-key-on-macos</link>
            <guid>https://easonchang.com/posts/using-ssh-with-putty-key-on-macos</guid>
            <pubDate>Thu, 18 Aug 2016 11:00:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/3B3Hrd4.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[使用production mode啟動你的rails專案]]></title>
            <link>https://easonchang.com/posts/start-your-rails-project-with-production-mode</link>
            <guid>https://easonchang.com/posts/start-your-rails-project-with-production-mode</guid>
            <pubDate>Tue, 16 Aug 2016 02:34:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://imgur.com/a21E49E.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【DailyUI #003】Landing Page]]></title>
            <link>https://easonchang.com/posts/dailyui-003-landing-page</link>
            <guid>https://easonchang.com/posts/dailyui-003-landing-page</guid>
            <pubDate>Tue, 10 May 2016 19:43:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/5qKslKE.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【DailyUI #002】Credit Card Checkout]]></title>
            <link>https://easonchang.com/posts/dailyui-002-credit-card-checkout</link>
            <guid>https://easonchang.com/posts/dailyui-002-credit-card-checkout</guid>
            <pubDate>Mon, 09 May 2016 21:03:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/hEbjURo.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【DailyUI #001】Sign Up]]></title>
            <link>https://easonchang.com/posts/dailyui-001-sign-up</link>
            <guid>https://easonchang.com/posts/dailyui-001-sign-up</guid>
            <pubDate>Mon, 09 May 2016 07:28:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/rWNKTqv.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【DailyUI #000】成為最強前端設計師吧]]></title>
            <link>https://easonchang.com/posts/dailyui-000-become-awesome-front-end-designer</link>
            <guid>https://easonchang.com/posts/dailyui-000-become-awesome-front-end-designer</guid>
            <pubDate>Sun, 08 May 2016 14:50:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/yMgo3z4.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【閱讀筆記】從《他是玩真的！》汲取鋼鐵人Elon Musk創造未來的關鍵能力]]></title>
            <link>https://easonchang.com/posts/10-keys-of-elon-musk</link>
            <guid>https://easonchang.com/posts/10-keys-of-elon-musk</guid>
            <pubDate>Sat, 16 Apr 2016 18:30:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/HqlXDN7.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #011】LifeGame，生命遊戲模擬無限的可能性]]></title>
            <link>https://easonchang.com/posts/100sites-011-lifegame</link>
            <guid>https://easonchang.com/posts/100sites-011-lifegame</guid>
            <pubDate>Mon, 28 Mar 2016 03:54:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/pZmuBeF.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #010】Piano，用P5js的sound函式庫實作虛擬鋼琴]]></title>
            <link>https://easonchang.com/posts/100sites-010-piano</link>
            <guid>https://easonchang.com/posts/100sites-010-piano</guid>
            <pubDate>Fri, 25 Mar 2016 17:57:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/8aBbIhk.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #009】Flame，P5js酷炫小動畫]]></title>
            <link>https://easonchang.com/posts/100sites-009-flame</link>
            <guid>https://easonchang.com/posts/100sites-009-flame</guid>
            <pubDate>Wed, 23 Mar 2016 07:05:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/rqkEbP4.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #008】Showcase，單頁式網站設計展示我的作品集]]></title>
            <link>https://easonchang.com/posts/100sites-008-showcase</link>
            <guid>https://easonchang.com/posts/100sites-008-showcase</guid>
            <pubDate>Sun, 20 Mar 2016 18:42:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/sZzCbXP.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #007】Pong，使用P5.js建構的復古遊戲]]></title>
            <link>https://easonchang.com/posts/100sites-007-pong</link>
            <guid>https://easonchang.com/posts/100sites-007-pong</guid>
            <pubDate>Sat, 19 Mar 2016 17:55:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/wznoZbr.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[如何在Mac OS X上安裝Verilog環境]]></title>
            <link>https://easonchang.com/posts/verilog-on-macosx</link>
            <guid>https://easonchang.com/posts/verilog-on-macosx</guid>
            <pubDate>Fri, 18 Mar 2016 17:40:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/5qKcx3Q.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【閱讀筆記】少，但是更好——精準生活，拿回人生主控權]]></title>
            <link>https://easonchang.com/posts/less-but-better</link>
            <guid>https://easonchang.com/posts/less-but-better</guid>
            <pubDate>Thu, 17 Mar 2016 08:20:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/P0nkaLj.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #006】Snack]]></title>
            <link>https://easonchang.com/posts/100sites-006-snack</link>
            <guid>https://easonchang.com/posts/100sites-006-snack</guid>
            <pubDate>Tue, 16 Feb 2016 12:41:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/BfDXbAU.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #005】Drawer]]></title>
            <link>https://easonchang.com/posts/100sites-005-drawer</link>
            <guid>https://easonchang.com/posts/100sites-005-drawer</guid>
            <pubDate>Mon, 15 Feb 2016 17:49:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/k5wMk9z.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #004】Firework]]></title>
            <link>https://easonchang.com/posts/100sites-004-firework</link>
            <guid>https://easonchang.com/posts/100sites-004-firework</guid>
            <pubDate>Sun, 14 Feb 2016 16:57:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/wHyk3xI.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #003】TodoList]]></title>
            <link>https://easonchang.com/posts/100sites-003-todolist</link>
            <guid>https://easonchang.com/posts/100sites-003-todolist</guid>
            <pubDate>Sat, 13 Feb 2016 19:12:00 GMT</pubDate>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/GVtN27w.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #002】Pomodoro]]></title>
            <link>https://easonchang.com/posts/100sites-002-pomodoro</link>
            <guid>https://easonchang.com/posts/100sites-002-pomodoro</guid>
            <pubDate>Fri, 12 Feb 2016 16:07:00 GMT</pubDate>
            <description><![CDATA[一個簡單的番茄鐘工作法計時器。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/9qcTEZY.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #001】Timer]]></title>
            <link>https://easonchang.com/posts/100sites-001-timer</link>
            <guid>https://easonchang.com/posts/100sites-001-timer</guid>
            <pubDate>Fri, 12 Feb 2016 15:56:00 GMT</pubDate>
            <description><![CDATA[一個很簡單的倒數計時器。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/7fMXTrA.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #000】My Journey to Becoming a Full Stack Developer]]></title>
            <link>https://easonchang.com/posts/100sites</link>
            <guid>https://easonchang.com/posts/100sites</guid>
            <pubDate>Fri, 12 Feb 2016 15:28:00 GMT</pubDate>
            <description><![CDATA[To become a full stack developer, I've decided to start a large number of side-projects to learn by doing and efficiently improve the skills I need.]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/i5gPgdO.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[【100sites #000】我的全端工程師之路]]></title>
            <link>https://easonchang.com/posts/100sites</link>
            <guid>https://easonchang.com/posts/100sites</guid>
            <pubDate>Fri, 12 Feb 2016 15:28:00 GMT</pubDate>
            <description><![CDATA[為了成為全端工程師，我決定開始做大量的side-project，從做中學，高效地提升我所需要的能力。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/i5gPgdO.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[「閱讀筆記」槓桿閱讀術——本田直之]]></title>
            <link>https://easonchang.com/posts/lever-reading</link>
            <guid>https://easonchang.com/posts/lever-reading</guid>
            <pubDate>Tue, 27 Oct 2015 18:07:00 GMT</pubDate>
            <description><![CDATA[提升商業書「閱讀效益」，以「投資」的角度進行閱讀。]]></description>
            <author>eason@easonchang.com (Eason Chang)</author>
            <enclosure url="https://i.imgur.com/9V5G9NC.jpg" length="0" type="image/jpg"/>
        </item>
    </channel>
</rss>