V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
xcatliu
V2EX  ›  分享创造

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

  •  
  •   xcatliu ·
    xcatliu · 2020-08-14 20:46:39 +08:00 · 6381 次点击
    这是一个创建于 1343 天前的主题,其中的信息可能已经有所发展或是发生改变。

    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 章节开始,我写了很多设计思想,欢迎大家一起来讨论一起来建设!


    前情提要:

    32 条回复    2020-10-12 16:19:50 +08:00
    wxsm
        1
    wxsm  
       2020-08-14 20:49:14 +08:00 via iPhone   ❤️ 1
    xcatliu
        2
    xcatliu  
    OP
       2020-08-14 21:21:24 +08:00
    @wxsm 部署在 GitHub Pages 上的,可能需要科学上网
    codehz
        3
    codehz  
       2020-08-14 21:46:20 +08:00   ❤️ 1
    官网除了首页和文档外其他都是空白的。。。
    xcatliu
        4
    xcatliu  
    OP
       2020-08-14 21:48:23 +08:00 via iPhone
    @codehz 文档写了几万字呢!其他的还在建设中嘛
    yanshenxian
        5
    yanshenxian  
       2020-08-14 22:45:38 +08:00   ❤️ 1
    厉害 不过我刚用 zola 搭了个网站
    https://blog.yanshenxian.xyz/
    wzw
        6
    wzw  
       2020-08-14 23:30:59 +08:00 via iPhone   ❤️ 1
    都打不开……
    Dvel
        7
    Dvel  
       2020-08-14 23:35:57 +08:00   ❤️ 1
    打的开呀,我直连和代理都秒开。
    xcatliu
        8
    xcatliu  
    OP
       2020-08-14 23:40:25 +08:00 via iPhone
    @wzw 那估计 github pages 的网站你都打不开了
    xcatliu
        9
    xcatliu  
    OP
       2020-08-14 23:43:20 +08:00 via iPhone
    @wzw 这个不是 github pages 的,你试试 https://manual.deno.js.cn
    timedivision
        10
    timedivision  
       2020-08-15 09:26:18 +08:00   ❤️ 1
    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/[email protected]/deps.ts:43"

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

    FYI:
    42 第四十二类 科学技术服务和与之相关的研究与设计服务;工业分析、工业研究和工业品外观设计服务;质量控制和质量认证服务;计算机硬件与软件的设计与开发。
    watanuki
        22
    watanuki  
       2020-08-17 14:30:47 +08:00   ❤️ 1
    deno 这么快就已经开始用起来了?
    xcatliu
        23
    xcatliu  
    OP
       2020-08-17 14:50:10 +08:00
    @watanuki 一起来尝鲜吧~
    touno
        24
    touno  
       2020-08-18 09:28:23 +08:00   ❤️ 1
    虽然我也打不开 404,但是看了你的文档说明也大致了解到这是什么产品,按照产品角度思考,这类产品也太多了,如果想生存下来,我建议是走小白傻瓜化路线,主要针对 WIN 系统开发一些部署更加便捷的操作体验,比如打包正 EXE~

    不断试想用户使用场景,假如自己是一个想做网站,而又什么都不懂的用户,我应该会怎么操作更加便捷,等获取足够的用户以后,可以进阶开发类型的高阶模式,比如开发教程等等
    xcatliu
        25
    xcatliu  
    OP
       2020-08-18 10:43:56 +08:00
    @touno 感谢建议!确实竞争很激烈,不过能有人用我就很开心啦。准备先吸引一部分 deno 用户,争取 deno 相关的网站和文档都用 pagic 。

    小白傻瓜化路线的话,我准备从部署角度傻瓜化,比如 fork 一个仓库就直接生成好一个网站了,后面就只用改 md 文件就行,什么都不用安装。
    我也和 TencentCloudBase 准备推出一个傻瓜化的一键部署方案:

    https://github.com/TencentCloudBase/cloudbase-framework/commit/0ad1ab8e2cb73e5ce438279e01a9f0176cde4e0c
    xcatliu
        26
    xcatliu  
    OP
       2020-08-18 10:55:17 +08:00
    @watanuki deno 的设计很棒!
    touno
        27
    touno  
       2020-08-18 11:18:08 +08:00
    @xcatliu 恩,架构要先设计清楚,其他功能的东西可以基于迭代版本
    matrix67
        28
    matrix67  
       2020-08-18 12:28:08 +08:00
    @agdhole #12 这个速度好快,真的是太快了。6666
    suzic
        29
    suzic  
       2020-09-12 18:26:09 +08:00
    为什么没了?
    xcatliu
        30
    xcatliu  
    OP
       2020-09-14 10:09:45 +08:00
    @suzic 我的 github 账号被禁了,申诉中
    legege007
        31
    legege007  
       2020-10-12 14:37:29 +08:00
    试玩了一把,记录了一下遇到的坑和解决方法: https://geekplayers.com/pagic-basic-tutorial.html
    xcatliu
        32
    xcatliu  
    OP
       2020-10-12 16:19:50 +08:00
    @legege007 很赞!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5211 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 07:32 · PVG 15:32 · LAX 00:32 · JFK 03:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.