Skip to content

Commit

Permalink
Merge pull request #284 from xuewenG/update-readme
Browse files Browse the repository at this point in the history
格式化 README.md,更新贡献者
  • Loading branch information
xuewenG authored Feb 16, 2025
2 parents bf4842f + 6c32578 commit 74545a5
Show file tree
Hide file tree
Showing 2 changed files with 94 additions and 71 deletions.
7 changes: 7 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,13 @@
"avatar_url": "https://avatars.githubusercontent.com/u/77521861?v=4",
"profile": "https://github.com/Jinvic",
"contributions": []
},
{
"login": "dianso",
"name": "DIANSO",
"avatar_url": "https://avatars.githubusercontent.com/u/1454808?v=4",
"profile": "https://github.com/dianso",
"contributions": []
}
],
"contributorsPerLine": 7,
Expand Down
158 changes: 87 additions & 71 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 🌟 Moments - 极简朋友圈
# 🌟 Moments - 极简朋友圈

[![release](https://img.shields.io/badge/release-更新记录-blue)](https://github.com/kingwrcy/moments/releases)
[![docker-release-status](https://img.shields.io/github/actions/workflow/status/kingwrcy/moments/docker-image-release.yml)](https://github.com/kingwrcy/moments/actions/workflows/docker-image-release.yml)
Expand All @@ -7,60 +7,65 @@
[![discussion](https://img.shields.io/badge/moments-论坛-blue)](https://discussion.mblog.club)

💡 **从 v0.2.1 开始,Moments 采用 Golang 重写服务端,包体积更小,功能更强!**
🔍 **仍需 v0.2.0 版本?[点这里](https://github.com/kingwrcy/moments/blob/master/README.md)**
🔍 **仍需 v0.2.0 版本?[点这里](https://github.com/kingwrcy/moments/blob/master/README.md)**

---

## 🎯 功能亮点
## 🎯 功能亮点

### 👤 用户系统
- 🏠 **默认账号**`admin/a123456`,登录后可在后台修改
- 👥 **支持多用户模式**,可控制是否允许注册
### 👤 用户系统

### 📝 Memo 记录
- 🔖 **标签管理**,让内容更清晰
- 🖼️ **支持图片上传**,可存储至本地或 S3
- 🖼️ **自动生成缩略图**(目前仅支持本地上传)
- 📝 **支持 Markdown 语法**,后续增加更多标签支持
- ❤️ **点赞 & 评论**,可在后台控制评论功能
- 🎵 **支持网易云音乐、B 站视频、外部链接嵌入**
- 📖 **支持豆瓣读书 & 豆瓣电影引用**
- 🏠 **默认账号**`admin/a123456`,登录后可在后台修改
- 👥 **支持多用户模式**,可控制是否允许注册

### 🛠️ 其他功能
- 📱 **完美适配移动端**
- 🌙 **支持暗黑模式**
### 📝 Memo 记录

- 🔖 **标签管理**,让内容更清晰
- 🖼️ **支持图片上传**,可存储至本地或 S3
- 🖼️ **自动生成缩略图**(目前仅支持本地上传)
- 📝 **支持 Markdown 语法**,后续增加更多标签支持
- ❤️ **点赞 & 评论**,可在后台控制评论功能
- 🎵 **支持网易云音乐、B 站视频、外部链接嵌入**
- 📖 **支持豆瓣读书 & 豆瓣电影引用**

### 🛠️ 其他功能

- 📱 **完美适配移动端**
- 🌙 **支持暗黑模式**
-**回到顶部按钮**
- 🗄️ **数据库采用 SQLite**,随时可备份
- 🖼️ **支持自定义头图、头像、网站标题**
- 🗄️ **数据库采用 SQLite**,随时可备份
- 🖼️ **支持自定义头图、头像、网站标题**

---

## 🚀 快速上手
## 🚀 快速上手

### 🛠️ 环境变量
### 🛠️ 环境变量

Moments 支持以下 **环境变量** 进行配置:
Moments 支持以下 **环境变量** 进行配置:

| 变量名 | 说明 | 默认值 |
|-----------------|---------------------|------------------------------------------------------|
| `PORT` | 监听端口 | `3000` |
| `JWT_KEY` | JWT 密钥 | **不填写则随机生成,重启后需重新登录** |
| `DB` | SQLite 数据库存放目录 | `db.sqlite`(默认 `/app/data/db.sqlite`|
| `UPLOAD_DIR` | 上传文件本地目录 | `upload`(默认 `/app/data/upload`|
| `LOG_LEVEL` | 日志级别 | `info`(可选 `debug`|
| `ENABLE_SWAGGER` | 启用 Swagger 文档 | `false`(可选 `true`,访问 `/swagger/index.html`|
| 变量名 | 说明 | 默认值 |
| ---------------- | --------------------- | -------------------------------------------------- |
| `PORT` | 监听端口 | `3000` |
| `JWT_KEY` | JWT 密钥 | **不填写则随机生成,重启后需重新登录** |
| `DB` | SQLite 数据库存放目录 | `db.sqlite`(默认 `/app/data/db.sqlite`|
| `UPLOAD_DIR` | 上传文件本地目录 | `upload`(默认 `/app/data/upload`|
| `LOG_LEVEL` | 日志级别 | `info`(可选 `debug`|
| `ENABLE_SWAGGER` | 启用 Swagger 文档 | `false`(可选 `true`,访问 `/swagger/index.html`|

**支持 `.env` 文件加载环境变量**,示例:

**支持 `.env` 文件加载环境变量**,示例:
```env
JWT_KEY=your_secret_key
LOG_LEVEL=info
```

---

## 🐳 使用 Docker
## 🐳 使用 Docker

🔹 **启动容器**(需替换 `$JWT_KEY`):

🔹 **启动容器**(需替换 `$JWT_KEY`):
```bash
docker run -d \
-e PORT=3000 \
Expand All @@ -70,10 +75,11 @@ docker run -d \
--name moments \
kingwrcy/moments:latest
```

📌 **持久化数据:** `/app/data` 挂载至 `/var/moments`
📌 **可选:** `latest`(稳定版) 或 `dev`(开发版,功能前沿但相对不稳定)
📌 **可选:** `latest`(稳定版) 或 `dev`(开发版,功能前沿但相对不稳定)

### 📝 使用 Docker Compose
### 📝 使用 Docker Compose

```yaml
services:
Expand All @@ -92,93 +98,102 @@ services:
---
## 💻 可执行文件安装
## 💻 可执行文件安装
🔽 **[下载最新版本](https://github.com/kingwrcy/moments/releases)**
🔽 **[下载最新版本](https://github.com/kingwrcy/moments/releases)**
> 示例(Windows 版):
> 示例(Windows 版):
| 文件名 | 说明 |
|----------------------------------------------|----------------------------------------------|
| `moments-windows-amd64-x.x.x.exe.zip` | **压缩包**,解压后可直接运行 |
| `moments-windows-amd64-x.x.x.exe-checksum.txt` | `MD5` 校验码,验证文件完整性 |
| 文件名 | 说明 |
| ---------------------------------------------- | ---------------------------- |
| `moments-windows-amd64-x.x.x.exe.zip` | **压缩包**,解压后可直接运行 |
| `moments-windows-amd64-x.x.x.exe-checksum.txt` | `MD5` 校验码,验证文件完整性 |

---

## 🔑 生成 JWT_KEY
## 🔑 生成 JWT_KEY

📌 **方法 1:OpenSSL**

📌 **方法 1:OpenSSL**
```bash
openssl rand -hex 32
```
```

📌 **方法 2:SHA256**

📌 **方法 2:SHA256**
```bash
echo $RANDOM | sha256sum
```
```

📌 **方法 3:在线生成**([点这里](https://tool.lu/uuid) 生成 UUID)
📌 **方法 3:在线生成**([点这里](https://tool.lu/uuid) 生成 UUID)

---

## 🛠️ 开发
## 🛠️ 开发

### 🔧 依赖环境
### 🔧 依赖环境

📌 **后端:** `Go 1.22.5+`
📌 **前端:** `NodeJS 18+`,推荐使用 `PNPM`
📌 **VSCode 推荐插件:**
- `gitlens`(Git 扩展)
- `prettier`(代码格式化)
- `eslint`(代码规范检查)
- `golang`(Go 语言支持)
📌 **VSCode 推荐插件:**

- `gitlens`(Git 扩展)
- `prettier`(代码格式化)
- `eslint`(代码规范检查)
- `golang`(Go 语言支持)

### 🏗️ 启动
### 🏗️ 启动

#### 1️⃣ 使用 `make`(推荐)
#### 1️⃣ 使用 `make`(推荐)

后端:

后端:
```bash
cd moments
make backend-dev
```
前端(新终端):

前端(新终端):

```bash
cd moments
make frontend-install
make frontend-dev
```

#### 2️⃣ 手动运行
#### 2️⃣ 手动运行

后端:

后端:
```bash
cd moments/backend
go build -ldflags="-X main.version=local -X main.commitId=local" -o ./dist/moments
./dist/moments
```
前端:

前端:

```bash
cd moments/front
pnpm install
pnpm run dev
```

📍 启动后访问 `http://localhost:3000`
📍 启动后访问 `http://localhost:3000`

---

## 🌐 其他版本
## 🌐 其他版本

| 项目 | 演示地址 |
|----------------------------------------------------------------|--------------------------------------------------------------------|
| --------------------------------------------------------------- | -------------------------------------------------------------------- |
| [RandallAnjie/moments](https://github.com/RandallAnjie/moments) | [https://moments.randallanjie.com](https://moments.randallanjie.com) |

---

## ❤️ 致谢 Contributors
## ❤️ 致谢 Contributors

感谢所有贡献者!🎉
感谢所有贡献者!🎉

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
Expand All @@ -201,6 +216,7 @@ pnpm run dev
<td align="center" valign="top" width="14.28%"><a href="https://github.com/jkjoy"><img src="https://avatars.githubusercontent.com/u/23159890?v=4?s=80" width="80px;" alt="浪子"/><br /><sub><b>浪子</b></sub></a><br /></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/lateautumn2"><img src="https://avatars.githubusercontent.com/u/57248164?v=4?s=80" width="80px;" alt="lateautumn2"/><br /><sub><b>lateautumn2</b></sub></a><br /></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Jinvic"><img src="https://avatars.githubusercontent.com/u/77521861?v=4?s=80" width="80px;" alt="Jinvic"/><br /><sub><b>Jinvic</b></sub></a><br /></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/dianso"><img src="https://avatars.githubusercontent.com/u/1454808?v=4?s=80" width="80px;" alt="DIANSO"/><br /><sub><b>DIANSO</b></sub></a><br /></td>
</tr>
</tbody>
</table>
Expand All @@ -212,12 +228,12 @@ pnpm run dev

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!

📌 **欢迎贡献!** 详情见 [all-contributors](https://github.com/all-contributors/all-contributors) 规范。
📌 **欢迎贡献!** 详情见 [all-contributors](https://github.com/all-contributors/all-contributors) 规范。

---

## ⭐ Star History
## ⭐ Star History

[![Star History](https://api.star-history.com/svg?repos=kingwrcy/moments&type=Date)](https://star-history.com/#kingwrcy/moments&Date)
[![Star History](https://api.star-history.com/svg?repos=kingwrcy/moments&type=Date)](https://star-history.com/#kingwrcy/moments&Date)

🔥 **如果你觉得 Moments 还不错,欢迎点个 Star!** 🚀
🔥 **如果你觉得 Moments 还不错,欢迎点个 Star!** 🚀

0 comments on commit 74545a5

Please sign in to comment.