Pagic 官网来啦! Deno + React 驱动的静态网站生成器!

2020-08-14 20:46:39 +08:00
 xcatliu

Pagic 是一个由 Deno + React 驱动的静态网站生成器。

特性

配置简单

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 来引入第三方主题或插件。


以上节选自官网,请访问Pagic 官网了解更多。


前阵子完成了基本功能的开发,没想到 pagic.org 域名还没有人注册,于是赶紧注册后开始写文档。经历夜以继日的奋笔疾书,终于完成了网站的中文版!

不出意外的话,目前的 api 应该不会再改动了,欢迎大家来试用!

等 i18n 做好就会发布 1.0 版本。


写文档真的是一件很困难很麻烦很痛苦的事,要循序渐进,要统一术语,还要输出思想。

_layout.tsx 章节开始,我写了很多设计思想,欢迎大家一起来讨论一起来建设!


前情提要:

6396 次点击
所在节点    分享创造
32 条回复
wxsm
2020-08-14 20:49:14 +08:00
xcatliu
2020-08-14 21:21:24 +08:00
@wxsm 部署在 GitHub Pages 上的,可能需要科学上网
codehz
2020-08-14 21:46:20 +08:00
官网除了首页和文档外其他都是空白的。。。
xcatliu
2020-08-14 21:48:23 +08:00
@codehz 文档写了几万字呢!其他的还在建设中嘛
yanshenxian
2020-08-14 22:45:38 +08:00
厉害 不过我刚用 zola 搭了个网站
https://blog.yanshenxian.xyz/
wzw
2020-08-14 23:30:59 +08:00
都打不开……
Dvel
2020-08-14 23:35:57 +08:00
打的开呀,我直连和代理都秒开。
xcatliu
2020-08-14 23:40:25 +08:00
@wzw 那估计 github pages 的网站你都打不开了
xcatliu
2020-08-14 23:43:20 +08:00
@wzw 这个不是 github pages 的,你试试 https://manual.deno.js.cn
timedivision
2020-08-15 09:26:18 +08:00
error: error sending request for url ( https://raw.githubusercontent.com/pillarjs/path-to-regexp/v6.1.0/src/index.ts): error trying to connect: tcp connect error: Connection refused (os error 61)
Imported from "https://deno.land/x/oak@v6.0.0/deps.ts:43"

上面成功下载了一堆,结尾报错了,全局科学上网
xcatliu
2020-08-15 09:33:13 +08:00
@timedivision 看上去还是墙的原因,那个资源直接浏览器能打得开吗?
agdhole
2020-08-15 10:31:25 +08:00
最近在用 https://v2.docusaurus.io ,也是 react,写起来很舒服,mdx 和其他插件基本零配置,楼主的产品也可以参考下
agdhole
2020-08-15 10:32:53 +08:00
也可以通过 deno 的社区 drive,把它自动部署到 vercel 上,速度比 GitHub pages 快太多
xcatliu
2020-08-15 11:09:55 +08:00
@agdhole 看上去不错!我去试试
timedivision
2020-08-15 14:17:12 +08:00
@xcatliu 你访问试下,我这访问是 404 ~
xcatliu
2020-08-15 16:03:37 +08:00
ryh
2020-08-15 18:34:30 +08:00
这名字可以 建议注册商标保护一下
xcatliu
2020-08-15 18:39:06 +08:00
@ryh 哈哈,名字是不错,注册商标就不用了吧,vue 注册了吗?
ljpCN
2020-08-16 09:55:55 +08:00
除了使用 deno,相比 gatsby,有没有特性的对比和表现的 benchmark ?
xcatliu
2020-08-16 10:41:05 +08:00
@ljpCN 特性上肯定是 gatsby 多多了,毕竟生态系统已经建立起来了。构建过程没对比过,pagic 第一次构建会比较慢,因为要下载各种模块(相当于 npm install 也在构建过程中),后续在 watch 模式下构建是瞬间的。构建好的网站性能,pagic 是极致的,已经预渲染好了,而且页面间跳转只会请求必要的内容数据,由于用到了很多浏览器的新特性,所以性能肯定很好(因为没有多余代码),不过也因此不支持 ie,具体可看 https://pagic.org/docs/limitations.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/698343

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX