当前网站。基于 Next.js、tRPC、@tanstack/react-query 和 Prisma 的先进轻量 Node.js 全栈项目。
当前为第二版。第一版使用
Radix UI,此 UI 库对 SSR 支持较好,但功能完善程度一般;第一版项目代码中仅包含少量后端代码,未集成数据库和登录注册等功能,设计不完善,暂未开源。
此站点持续开发中,功能和开源进度敬请期待。
以下是简介:
- 基于 Next.js、Mantine UI、Tailwindcss 构建前端界面;
- 使用
@mdx-js相关工具解析 Markdown 并渲染,其中用到了remark-prism处理代码高亮; - 使用 Prisma 和 tRPC 来实现数据存储查询;
- 使用
@tanstack/react-query集成 tRPC,SSR 中所有数据尽可能以 Hydrate 形式供给前端,仅在变更时再发送请求,减少不必要的网络开销; - 使用
better-auth的 OAuth2 结合自部署的 Gitea 来实现登录,结合 tRPC 中间件实现权限控制; - 自带配套的运行容器、构建命令、容器开发配置;
- 完善的 Drone CI/CD,尽可能复用 npm 包缓存和 Docker Layer 来加速构建,失败时有 rollback 步骤。
