我对开源项目 Memos 进行了一些自定义修改,主要针对 Explore(发现)页面的体验优化。现已将修改后的版本发布到 Docker Hub。
🐳 Docker 镜像
docker pull charyeahowo/memos:latest
或者指定版本:
docker pull charyeahowo/memos:custom
✨ 主要修改内容
1. Explore 页面支持置顶文章
问题:官方版本的 Explore 页面不支持置顶文章显示,所有公开 memo 按时间排序。
解决方案:启用 pinnedFirst 和 includePinned 选项,让置顶的 memo 显示在列表顶部。
2. 日历点击导航修复
问题:在 Explore 页面点击日历热力图的日期,会跳转到首页 /?filter=...,而不是留在当前页面。
解决方案:修改 useDateFilterNavigation hook,使其导航到当前页面路径而非硬编码的根路径。此修复已提交 PR 到官方仓库 #5605。
10小时后该修改被boojack本人Merged合并
3. 日历统计完整显示
问题:未登录用户访问 Explore 页面时,日历热力图只显示部分日期数据(由于分页限制)。
解决方案:使用 listAllUserStats API 获取所有公开 memo 的完整统计数据,不再受分页限制。
4. 简化 Explore 页面
问题:Explore 页面显示用户头像和名称,对于单用户博客场景显得冗余。
解决方案:移除 showCreator 属性,让页面更专注于内容展示。
🚀 使用方法
Docker Compose 配置
version: "3"
services:
memos:
image: charyeahowo/memos:latest
container_name: memos
ports:
- "5230:5230"
volumes:
- ./memos-data:/var/opt/memos
restart: always
直接运行
docker run -d --name memos -p 5230:5230 -v ./memos-data:/var/opt/memos charyeahowo/memos:latest
📁 修改的文件
web/src/pages/Explore.tsx- 启用置顶、移除用户显示web/src/hooks/useDateFilterNavigation.ts- 日历导航修复web/src/hooks/useFilteredMemoStats.ts- 使用全局统计 APIweb/src/hooks/useUserQueries.ts- 添加 useAllUserStats hookweb/src/layouts/MainLayout.tsx- Explore 上下文使用全局统计
🔗 相关链接
- Docker Hub: charyeahowo/memos
- 官方 Memos: usememos/memos
- 日历导航 PR: #5605(Merged)
- 在线演示: moment.mulingowo.cn/explore
如果你也在使用 Memos 作为个人博客,欢迎尝试这个版本!

Comments NOTHING