周末没事干,正好被网上一个点子启发,做了个人生进度可视化的网页,网页功能比较简单,就是把每一天通过一个小格子显示在网页上,不同的阶段显示不同的颜色,同时也能切换时间单位。
screenshots

阅读全文 »

Notion Converter一周年

时间飞快,Notion Converter插件从距离写下第一行代码到现在,正好过了一周年,今天就在一周年纪念日写一篇文章回顾一下吧。

阅读全文 »

最近有个项目是用nest.js作为后端框架,数据库是mongodb,ORM框架选择了目前nest.js圈最流行的prisma。项目本身很简单,在本地开发调试的时候出现了一个问题。
当我调用prismaService.save()时,报错Transactions are not supported by this deployment,大意是mongodb的事务操作要求必须有replica,即使是在本地开发。
搜索之后找到一个issue,找到一个配置本地docker mongodb的replica参数

1
2
3
4
5
6
7
8
1 - start a mongo container
docker run --name mongodb -d -p 27017:27017 mongo mongod --replSet rs0

2 - After your mongodb container is up and running, enter mongosh
docker exec -it mongodb mongosh

3 - Inside mongosh, initiate replica set
rs.initiate({_id: 'rs0', members: [{_id: 0, host: 'localhost:27017'}]})

配置完再执行事务就没问题了。

最近在重构Notion Converter插件的整体UI和功能,其中有个重构场景是当点击插件图标时,根据所在页面不同,行为也有所区别。如果在notion页面点击,弹出插件主题。如果在其他页面点击,弹出popup。

根据chrome插件文档说明,如果在manifest.json里配置了default_popup,那么popup点击事件就不会发送了。于是思路便是不设置default_popup ,同时监听插件点击事件,获取当前tab的url,如果是在notion页面,发送消息通知content_script.js

阅读全文 »

最近在做一个编辑器项目,因为打算做跨平台应用,于是技术方案使用了electron,同时希望用React做渲染层,于是使用了https://github.com/electron-react-boilerplate/electron-react-boilerplate作为脚手架。在开发过程中遇到一些需要调用Node.js api的场景,比如读写文件,与子进程交互。

一开始尝试直接在React层写fs.readdir ,发现会报错需要webpack5的polyfill。于是尝试搜索electron nodejs webpack polyfill,发现出来的结果都需要很复杂的配置,于是我尝试在脚手架仓库issue里搜索相关问题,还真找到一个相近的讨论,具体可以点这里查看,总结如下:

阅读全文 »

最近接到一个需求,客户想要用vaadin(一个用Java构建web的框架)构建一个页面,然后接入picovoice,客户想要一个demo,能支持在网页上语音唤醒,音频识别,意图分析。

阅读全文 »

最近安装了最新版本的google chrome浏览器后,运行后发现设置里的proxy选项没有了,于是就导致无法登录google账号,且无法科学上网。经过搜索后发现,在Arch Linux | Manjaro下,想要设置google chrome的代理,需要通过/opt/google/chrome/chrome --proxy-server="[http://127.0.0.1:7890](http://127.0.0.1:7890/)" 启动后,才能正常科学上网。MacOS下的chrome目前没有这个问题。

设置

背景

目前我个人的博客是托管在Github Pages下,用的也是Github提供的免费域名,但每个程序员都有个梦想,就是有一个属于自己的博客。
于是就决定趁着这段时间不忙,把Github Pages上的博客迁移到自己的服务器上,同时把这个过程记录下来,也能帮助到想要拥有自己博客的人。

阅读全文 »

背景

最近有一个需求,使用ffmpeg把非yuv420p色彩的视频转换成yuv420p bt709色彩,这个需求的具体解决过程放在下一篇文章,此文仅介绍本地ffmpeg编译内容。

因为在搜索色彩空间转换的过程中,发现了一些需要额外构建的filter,以及需要支持CUDA硬件加速,于是决定自己编译一个最新版本的ffmpeg,同时记录下此次编译的操作过程,希望可以帮到其他有需要的人。

阅读全文 »

背景

最近打算把公司后端项目从Java迁移到Kotlin,在迁移JPA实体类的时候,用data class代替了Java定义的class,同时用var+默认值的方式改写了id的定义

阅读全文 »
0%