0805-构建一个英语单词网站为什么这么难
最近工作中经常看英文文档,老板也说要习惯英文环境下的工作,于是我就想找个英语单词网站来帮助我学习和记忆单词。
但是市面上大部分英语单词网站都不太好用,要么就是界面丑陋,要么就是不全,要么就是广告太多。
手机上的单词软件我不适合,因为手机上干扰太多了,一会儿是微信消息,一会儿是视频,一会儿是这个那个消息。
我就想要安安静静的背单词,就是那种纯净版单词列表,没有广告,没有干扰,只有单词列表。
于是我就决定自己动手,构建一个英语单词网站。
第一步找单词列表。
在 github 上找到一个开源项目 dict 里面有单词列表的 Json 文件。
第二步将 Json 文件转换成 Markdown 文件。
自己写了几个 Python 脚本,转换成 Markdown 文件。
第三步基于 Rspress 构建网站。
Rspress 是一个基于 React 的静态网站生成器,使用起来非常简单。
遇到的问题及解决方案:
1、文本量太大,github action 里面 build 构建失败
尝试调整 github action 的配置,
- 将 build 的 timeout 设置为 180 分钟。
- 配置增加了节点缓存。
- 配置增加了内存。
都不行,而且每次调试非常耗时,这一顿操作下来好几天过去了。
算了,不用 action 构建了。
2、笔记本电脑构建失败
用 16G 内存的笔记本电脑构建失败,提示内存不足。
这又废了
3、台式电脑构建失败
用 32G 内存的台式电脑构建失败,提示内存不足。
继续废
4、没招了,只能拆分 Markdown 文件试试
写了个脚本,将 Markdown 文件拆分成多个小文件,减少单个文件的大小。
用台式电脑构建成功,虽然还是很慢,但是成功了。
看来在整体文本量不变的情况下,拆分文件可以减少内存占用。
再次尝试使用 github action 构建,还是失败。这 action 看来只能应付小型项目。
因此只能用台式电脑构建。
构建完成之后,又写了个脚本将构建的包上产到 gh-pages 分支。这样就可以通过 github pages 访问了。
声明:本站所有文章,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。-- mikigo
