这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天。经过多次讨论,考虑到我们Bocchi
小组 react
技术栈居多,因此决定基于 SSR 开发仿掘金站点
为我们这次青训营大作业的主题,本篇文章着重介绍此次项目的技术栈。
仓库地址: github.com/Bocchi-Deve…
TypeScript
在编程语言上,由于 React 天然对 TypeScript 支持十分友好,因此我们不假思索的选择了 TypeScript。
Nextjs
在项目选型上我们使用 Next.js
来做服务端渲染,Next.js 一个十分优秀的 React 开发框架,它具有众多优势。
pnpm
包管理器上我们选择最近大火的 pnpm
,全局 store 硬连接到 node_modules/.pnpm
,然后之间通过软链接来组织依赖关系。这样不但节省磁盘空间,也没有幽灵依赖问题,安装速度还快。
CSS
样式方面起初准备使用 TailWind css
毕竟其开发十分方便、快捷,但考虑到组内成员技术栈,最终我们选择了 Less Module
。
UI 库
组件库方面选择了字节自家的 Arco Design
,其与掘金官网整体契合度挺高的,再加上自己对其比较熟悉,同时也提过一个 PR
。
代码提交
对于多人协作开发,我们小组普遍没有经验,我也从来没有尝试过协同开发,因此我们参照些开源项目配置了 Husky、Commitlint、lint-staged、cz-git、bump-version
等工具。
可以使得团队对 commit 信息进行校验,拒绝不符合规范的提交,并且在 commit 也会进行 eslint 和 prettier 校验统一了团队的代码风格。
项目进度
到目前我们已经合并了 2 个 PR
,同时也建立严格的code review
机制