diff --git a/apps/vocechat/metadata/logo.png b/apps/vocechat/metadata/logo.png
new file mode 100644
index 00000000..0d33e1f7
Binary files /dev/null and b/apps/vocechat/metadata/logo.png differ
diff --git a/apps/vocechat/versions/0.3.0/README.md b/apps/vocechat/versions/0.3.0/README.md
new file mode 100644
index 00000000..50bab46d
--- /dev/null
+++ b/apps/vocechat/versions/0.3.0/README.md
@@ -0,0 +1,77 @@
+# Web Client of VoceChat
+
+
+
+
+
+
+
+[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/privoce/vocechat-web/issues)
+![GitHub issues](https://img.shields.io/github/issues-raw/Privoce/vocechat-web) ![GitHub](https://img.shields.io/github/license/privoce/vocechat-web) ![GitHub top language](https://img.shields.io/github/languages/top/privoce/vocechat-web) ![Docker Pulls](https://img.shields.io/docker/pulls/privoce/vocechat-server)
+
+
+
+- 🎉 Powered by React & Redux Toolkit
+- ✅ Typescript
+- 📦 PWA
+- 📢 Notification
+
+## Host your server! Or use our test server
+
+- Host your own Voce server ([docker image](https://hub.docker.com/r/privoce/vocechat-server/tags)):
+ Run on x86_64 platform:
+
+```bash
+docker run -d --restart=always \
+ -p 3000:3000 \
+ --name vocechat-server \
+ privoce/vocechat-server:latest
+```
+
+For more server hosting instructions, see our documentation: https://doc.voce.chat/
+
+## Preview
+
+- official site: https://voce.chat
+- live demo: https://privoce.voce.chat/
+- demo API Docs (Swagger): https://dev.voce.chat/api/swagger
+
+- design: https://www.figma.com/file/EHnNr53kNmDWgUT86It6CH/UI
+- text editor: https://plate.udecode.io/docs/installation
+- markdown editor: https://nhn.github.io/tui.editor/latest/
+- redux: [@reduxjs/toolkit](https://redux-toolkit.js.org/introduction/getting-started)
+- indexDB wrapper: https://github.com/localForage/localForage
+
+## Local Development
+
+- `git clone https://github.com/Privoce/vocechat-web vocechat-web`
+
+- `cd vocechat-web & yarn install`
+
+- `yarn start`
+
+- Open `localhost:3009`
+
+### Tools Recommended
+
+- [VS Code](https://code.visualstudio.com/) Editor Recommended
+- VS Code plugins:
+ - [dbaeumer.vscode-eslint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint): ESLint
+ - [esbenp.prettier-vscode](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode): Prettier
+ - [dsznajder.es7-react-js-snippets](https://marketplace.visualstudio.com/items?itemName=dsznajder.es7-react-js-snippets): Extensions for React, React-Native and Redux in JS/TS with ES7+ syntax
+
+## License
+
+[GPL v3](https://github.com/Privoce/vocechat-web/blob/main/LICENSE)
+
+## Thanks all the contributors
+
+
+
+
+
+Discuss collaboration: han@privoce.com or https://bridger.chat/han
+
+Telegram group: https://t.me/opencfdchannel VoceChat: https://voce.chat
+
+Telegram channel: https://t.me/vocechat_group VoceChat Channel: https://privoce.voce.chat
diff --git a/apps/vocechat/versions/0.3.0/config.json b/apps/vocechat/versions/0.3.0/config.json
new file mode 100644
index 00000000..baded362
--- /dev/null
+++ b/apps/vocechat/versions/0.3.0/config.json
@@ -0,0 +1,14 @@
+{
+ "formFields": [
+ {
+ "type": "number",
+ "labelZh": "端口",
+ "labelEn": "Port",
+ "required": true,
+ "default": 3000,
+ "rule": "paramPort",
+ "envKey": "PANEL_APP_PORT_HTTP",
+ "edit": true
+ }
+ ]
+}
diff --git a/apps/vocechat/versions/0.3.0/docker-compose.yml b/apps/vocechat/versions/0.3.0/docker-compose.yml
new file mode 100644
index 00000000..f4ebd504
--- /dev/null
+++ b/apps/vocechat/versions/0.3.0/docker-compose.yml
@@ -0,0 +1,18 @@
+version: '3'
+services:
+ vocechat:
+ image: privoce/vocechat-server:latest
+ container_name: ${CONTAINER_NAME}
+ restart: always
+ networks:
+ - 1panel-network
+ volumes:
+ - ./data:/app/data
+ ports:
+ - ${PANEL_APP_PORT_HTTP}:3000
+ labels:
+ createdBy: "Apps"
+
+networks:
+ 1panel-network:
+ external: true
\ No newline at end of file