“口袋里的笔记!”岂止好用,简直好用到爆,我打包好了……

296 阅读4分钟

前言

喜欢做笔记的,大家可能都尝试过非常多款应用。比如印象笔记小米便笺坚果云有道云笔记,等等不一而足。

今天我想要分享给大家的,是一款本地也能用的App——memos。是开源免费的。

文末有编译打包好的App文件,本地点击打开即可使用。

仓库

要说的这款应用,名字叫 memos,github的仓库地址是这里:

github.com/usememos/me…

memos github 仓库地址

官网体验地址:

usememos.com/

这个仓库开放源代码是全量的,也就是说前后端的代码,都是完全开源的

不像有些项目,打着开源的幌子,其实核心功能闭源;离开核心功能,项目基本就没办法用。这里就不公开点名了哈。

手动搭建

项目本地开发搭建,官方推荐是有4个依赖

1,环境依赖,细分了讲,就两个:

  • golang:go语言环境,项目使用的是1.19及以上。后端逻辑,和数据库操作,资源上传。使用最新版就好了。
  • nodejs:前端页面技术栈。项目使用的是 18.0.3 及以上。安装最新版省去麻烦。

2,拉取代码

使用 git 客户端拉取仓库代码,或直接手动在github页面下载 master 分支的zip文件

git clone https://github.com/usememos/memos.git

3,前端:安装依赖

进入 memos/web 目录,使用 yarn 安装依赖。我本地使用仓库推荐的 pnpm 安装javascript依赖,没有安装成功。使用 yarn 一次就过了。

yarn

4,前端:编译项目

查看 package.json 文件,scripts 部分提供了编译指令。

memos 前端 package.json 编译

执行以下命令:

npm run build

稍等片刻,没有异常 errorexception,编译好的项目就在 memos/web/dist 目录下了。

memos web 前端编译后目录

5,重要!!!dist 目录拷贝

我们不打算前后端项目分开部署,memos提供了 embeded 方式,将前端代码嵌入到golang的项目内。所以,为了最后打包为单一的 exe 可执行文件。这一步是必须的。

Move-Item "./server/dist" "./server/dist.bak"
Move-Item "./web/dist" "./server/" -Force

这里有两行命令,

  • 第一条是把原有的 server/dist 目录修改名字,进行备份。
  • 第二条是把编译好的前端 web/dist 目录,复制到 server/dist目录。

6,后端:安装依赖

下面编译后端代码。首先是安装 golang 的依赖项。命令行执行:

go mod tidy

保证没有异常,依赖安装成功,才能进入下一步。

7,后端:编译

仓库给出的开发文档,我们可无需指定更多的编译参数,直接运行:

go build

就会在当前根目录下获取到编译之后的,当前操作系统平台和架构的二进制文件。以windows 10 为例,编译后文件名,就是项目 go.mod 指定的名字——memos.exe

到这里,就大功告成了。

上手使用

上一节编译好的 memos.exe 文件,双击打开。

memos本地运行截图

默认监听在 8081 端口,也可以手动指定:

memos --port 8083

那么就会监听在指定的 8083 端口。

1,打开浏览器,输入网址:

http://127.0.0.1:8081

2,登录页面

登录页面

3,选择简体中文

根据使用习惯,选择简体中文。

选择简体中文

4,默认管理员

本应用所使用的默认管理员账号密码分别是

用户: admin
密码: 123456

管理员登录

5,内容界面

左侧导航栏,选择设置。

导航栏设置

语言选择简体中文。

设置简体中文

6,界面一览

这里是主界面的信息流。

信息流

还有我比较喜欢的“每日回顾”功能。

memos每日一顾

资源下载

为了便于使用,对仓库代码我做了以下改进

  • 根据OS,服务启动后,自动打开浏览器地址
  • viper配置项命令行默认值
  • 支持双击打开应用,默认命令行启动。

关注公众号,后台回复【memos240】,领取本地直接运行的资源文件。

最后

本文所介绍的仓库,基本上解决了我们个人知识库的问题。

支持看板按话题、关键字搜索时间线排序,还有权限管理。

最重要的是,无需联网,即可使用。