在今年 5 月份的時候,Deno 1.0 發佈了。Deno 是作者 Ryan Dahl 在 Node 之後的又一大作,它是一個新的運行時,用於在 Web 瀏覽器之外執行 JavaScript 和 TypeScript,其採用 Rust 編寫而成(最初用的是 Golang)。
今天介紹的項目就是使用 Deno + React 驅動的靜態網頁生成器,那麼它與我們更熟悉的 Hugo、Jekyll 等相比,有什麼區別呢,一起來看看吧。
項目名稱:Pagic
項目作者:xcatliu
開源許可協議:MIT
項目地址:https://gitee.com/xcatliu/pagic
項目簡介
Pagic 是一個由 Deno + React 驅動的靜態網站生成器。
它配置簡單,支持將 md/tsx 文件渲染成靜態頁面,而且還有大量的官方或第三方主題和插件可供擴展。
項目特點
配置簡單
Pagic 遵循約定優於配置的理念,儘可能的減少配置項,通過一些符合直覺的設計,降低用戶的理解成本,而又不失靈活性。
支持 md 和 tsx
Pagic 不僅支持將 md/tsx 文件渲染成靜態頁面,而且還能運行 tsx 中的 Hooks,藉助 React 組件的可編程性,極大的擴展了靜態網站的能力。
值得注意的是,每一個由 Pagic 生成的頁面都帶有預渲染好的 HTML,也因此具有極致的加載性能和搜索引擎優化(SEO)。同時,一旦頁面被加載,React 將接管這些靜態內容,並將其轉換成一個完整的單頁應用(SPA),其他的頁面則會只在用戶瀏覽到的時候才按需加載。
主題和插件
Pagic 擁有官方的 default, docs, blog 等主題,我們可以使用官方主題輕鬆的生成一個網站,也可以創建個性化的主題,甚至還可以擴展某個主題——這些能力都得益於 Pagic 符合直覺的 _layout.tsx 設計。
插件是 Pagic 最核心的功能之一。Pagic 將整個構建過程拆分為一個個內置插件,使得其他插件可以插入到構建過程中的任意位置,甚至可以通過替換內置插件完全的更改 Pagic 的構建過程,這給 Pagic 提供了無與倫比的靈活性。
Pagic 參考了 Deno 的設計,要求用戶通過一個完整的 URL 來引入第三方主題或插件。
部署示例
同類項目對比
如果你想了解更多的安裝與配置相關信息,那麼就點擊下方瞭解更多去項目主頁看看吧。