diff --git a/apps/passwordpusher/1.34.3/.env.sample b/apps/passwordpusher/1.34.3/.env.sample
new file mode 100644
index 00000000..c7bfa3ee
--- /dev/null
+++ b/apps/passwordpusher/1.34.3/.env.sample
@@ -0,0 +1,7 @@
+CONTAINER_NAME="passwordpusher"
+PANEL_APP_PORT_HTTP="40180"
+PANEL_DB_HOST="mysql"
+PWPUSHER_DB_PORT="3306"
+PANEL_DB_NAME="passwordpusher"
+PANEL_DB_USER="passwordpusher"
+PANEL_DB_USER_PASSWORD="MyDBPWD_brls9UwcRasl"
diff --git a/apps/passwordpusher/1.34.3/data.yml b/apps/passwordpusher/1.34.3/data.yml
new file mode 100644
index 00000000..3cafca60
--- /dev/null
+++ b/apps/passwordpusher/1.34.3/data.yml
@@ -0,0 +1,54 @@
+additionalProperties:
+ formFields:
+ - child:
+ default: ""
+ envKey: PANEL_DB_HOST
+ labelEn: Database Service
+ labelZh: 数据库服务
+ required: true
+ type: service
+ default: mysql
+ labelEn: Database Service
+ labelZh: 数据库服务
+ params:
+ - envKey: PWPUSHER_DB_PORT
+ key: mysql
+ type: param
+ value: "3306"
+ required: true
+ type: apps
+ values:
+ - label: MySQL
+ value: mysql
+ - default: passwordpusher
+ envKey: PANEL_DB_NAME
+ labelEn: Database
+ labelZh: 数据库名
+ random: true
+ required: true
+ rule: paramCommon
+ type: text
+ - default: passwordpusher
+ envKey: PANEL_DB_USER
+ labelEn: User
+ labelZh: 数据库用户
+ random: true
+ required: true
+ rule: paramCommon
+ type: text
+ - default: passwordpusher
+ envKey: PANEL_DB_USER_PASSWORD
+ labelEn: Password
+ labelZh: 数据库用户密码
+ random: true
+ required: true
+ rule: paramComplexity
+ type: password
+ - default: 40180
+ edit: true
+ envKey: PANEL_APP_PORT_HTTP
+ labelEn: Port
+ labelZh: 端口
+ required: true
+ rule: paramPort
+ type: number
diff --git a/apps/passwordpusher/1.34.3/docker-compose.yml b/apps/passwordpusher/1.34.3/docker-compose.yml
new file mode 100644
index 00000000..4b45932b
--- /dev/null
+++ b/apps/passwordpusher/1.34.3/docker-compose.yml
@@ -0,0 +1,18 @@
+version: '3'
+services:
+ passwordpusher:
+ container_name: ${CONTAINER_NAME}
+ restart: always
+ networks:
+ - 1panel-network
+ ports:
+ - "${PANEL_APP_PORT_HTTP}:5100"
+ environment:
+ - DATABASE_URL=mysql2://${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@${PANEL_DB_HOST}:${PWPUSHER_DB_PORT}/${PANEL_DB_NAME}
+ image: pglombardo/pwpush:1.34.3
+ labels:
+ createdBy: "Apps"
+
+networks:
+ 1panel-network:
+ external: true
diff --git a/apps/passwordpusher/README.md b/apps/passwordpusher/README.md
new file mode 100644
index 00000000..80c037fe
--- /dev/null
+++ b/apps/passwordpusher/README.md
@@ -0,0 +1,45 @@
+
+
+[](https://pwpush.com/)
+
+__Simple & Secure Password Sharing with Auto-Expiration of Shared Items__
+
+[](https://twitter.com/pwpush)
+
+[](https://stats.uptimerobot.com/6xJjNtPr93)
+[](https://hub.docker.com/repositories)
+
+[](https://github.com/pglombardo/PasswordPusher/actions/workflows/ruby-tests.yml)
+[](https://github.com/pglombardo/pwpush-cli/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)
+[](https://github.com/pglombardo/pwpush-cli/releases)
+[](https://github.com/pglombardo/pwpush/blob/master/LICENSE)
+
+
+
+------
+
+Give your users the tools to be secure by default.
+
+Password Pusher is an opensource application to communicate passwords over the web. Links to passwords expire after a certain number of views and/or time has passed.
+
+Hosted at [pwpush.com](https://pwpush.com) but you can also easily run your own private instance with just a few steps.
+
+* __Easy-to-install:__ Host your own via Docker, a cloud service or just use [pwpush.com](https://pwpush.com)
+* __Opensource:__ No blackbox code. Only trusted, tested and reviewed opensource code.
+* __Versatile:__ Push passwords, text, files or URLs that autoexpire and self delete.
+* __Audit logging:__ Track and control what you've shared and see who has viewed it.
+* __Encrypted storage:__ All sensitive data is stored encrypted and deleted entirely once expired.
+* __Host your own:__ Database backed or ephemeral, easily run your own instance isolated from the world.
+* __JSON API:__ Raw JSON API available for 3rd party tools or command line via `curl` or `wget`.
+* __Command line interface:__ Automate your password distribution with CLI tools or custom scripts.
+* __Logins__: Invite your colleagues and track what is pushed and who retrieved it.
+* __Internationalized:__ 28 language translations are bundled in. Easily selectable via UI or URL
+* __Themes:__ [26 themes](https://github.com/pglombardo/PasswordPusher/blob/master/Themes.md) bundled in courtesy of Bootswatch. Select with a simple environment variable.
+* __Unbranded delivery page:__ No logos, superfluous text or unrelated links to confuse end users.
+* __Customizable:__ Change text and default options via environment variables.
+* __Light & dark themes:__ Via CSS @media integration, the default site theme follows your local preferences.
+* __Rebrandable:__ Customize the site name, tagline and logo to fit your environment.
+* __Custom CSS:__ Bundle in your own custom CSS to add your own design.
+* __10 Years Old:__ Password Pusher has securely delivered millions and millions of passwords in its 10 year history.
+* __Actively Maintained:__ I happily work for the good karma of the great IT/Security community.
+* __Honest Software:__ Opensource written and maintained by [me](https://github.com/pglombardo) with the help of some great contributors. No organizations, corporations or evil agendas.
diff --git a/apps/passwordpusher/data.yml b/apps/passwordpusher/data.yml
new file mode 100644
index 00000000..26f95deb
--- /dev/null
+++ b/apps/passwordpusher/data.yml
@@ -0,0 +1,20 @@
+name: Password Pusher
+tags:
+ - 工具
+title: 一个通过网络传递密码的开源应用程序
+type: 工具
+description: 一个通过网络传递密码的开源应用程序
+additionalProperties:
+ key: passwordpusher
+ name: Password Pusher
+ tags:
+ - Tool
+ shortDescZh: 一个通过网络传递密码的开源应用程序
+ shortDescEn: An opensource application to communicate passwords over the web
+ type: tool
+ crossVersionUpdate: true
+ limit: 0
+ recommend: 0
+ website: https://pwpush.com
+ github: https://github.com/pglombardo/PasswordPusher
+ document: https://github.com/pglombardo/PasswordPusher/wiki
diff --git a/apps/passwordpusher/logo.png b/apps/passwordpusher/logo.png
new file mode 100644
index 00000000..e8b77979
Binary files /dev/null and b/apps/passwordpusher/logo.png differ
diff --git a/apps/passwordpusher/release/.env.sample b/apps/passwordpusher/release/.env.sample
new file mode 100644
index 00000000..c7bfa3ee
--- /dev/null
+++ b/apps/passwordpusher/release/.env.sample
@@ -0,0 +1,7 @@
+CONTAINER_NAME="passwordpusher"
+PANEL_APP_PORT_HTTP="40180"
+PANEL_DB_HOST="mysql"
+PWPUSHER_DB_PORT="3306"
+PANEL_DB_NAME="passwordpusher"
+PANEL_DB_USER="passwordpusher"
+PANEL_DB_USER_PASSWORD="MyDBPWD_brls9UwcRasl"
diff --git a/apps/passwordpusher/release/data.yml b/apps/passwordpusher/release/data.yml
new file mode 100644
index 00000000..3cafca60
--- /dev/null
+++ b/apps/passwordpusher/release/data.yml
@@ -0,0 +1,54 @@
+additionalProperties:
+ formFields:
+ - child:
+ default: ""
+ envKey: PANEL_DB_HOST
+ labelEn: Database Service
+ labelZh: 数据库服务
+ required: true
+ type: service
+ default: mysql
+ labelEn: Database Service
+ labelZh: 数据库服务
+ params:
+ - envKey: PWPUSHER_DB_PORT
+ key: mysql
+ type: param
+ value: "3306"
+ required: true
+ type: apps
+ values:
+ - label: MySQL
+ value: mysql
+ - default: passwordpusher
+ envKey: PANEL_DB_NAME
+ labelEn: Database
+ labelZh: 数据库名
+ random: true
+ required: true
+ rule: paramCommon
+ type: text
+ - default: passwordpusher
+ envKey: PANEL_DB_USER
+ labelEn: User
+ labelZh: 数据库用户
+ random: true
+ required: true
+ rule: paramCommon
+ type: text
+ - default: passwordpusher
+ envKey: PANEL_DB_USER_PASSWORD
+ labelEn: Password
+ labelZh: 数据库用户密码
+ random: true
+ required: true
+ rule: paramComplexity
+ type: password
+ - default: 40180
+ edit: true
+ envKey: PANEL_APP_PORT_HTTP
+ labelEn: Port
+ labelZh: 端口
+ required: true
+ rule: paramPort
+ type: number
diff --git a/apps/passwordpusher/release/docker-compose.yml b/apps/passwordpusher/release/docker-compose.yml
new file mode 100644
index 00000000..a557d5d6
--- /dev/null
+++ b/apps/passwordpusher/release/docker-compose.yml
@@ -0,0 +1,18 @@
+version: '3'
+services:
+ passwordpusher:
+ container_name: ${CONTAINER_NAME}
+ restart: always
+ networks:
+ - 1panel-network
+ ports:
+ - "${PANEL_APP_PORT_HTTP}:5100"
+ environment:
+ - DATABASE_URL=mysql2://${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@${PANEL_DB_HOST}:${PWPUSHER_DB_PORT}/${PANEL_DB_NAME}
+ image: pglombardo/pwpush:release
+ labels:
+ createdBy: "Apps"
+
+networks:
+ 1panel-network:
+ external: true