-
Notifications
You must be signed in to change notification settings - Fork 329
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2079 from frappe/develop
chore(release): dev to main
- Loading branch information
Showing
45 changed files
with
3,711 additions
and
1,524 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,63 +1,161 @@ | ||
<div align="center" markdown="1"> | ||
<a href="https://frappedesk.com/"> | ||
<img src=".github/hd-logo.svg" height="128" alt="Frappe Helpdesk Logo"> | ||
</a> | ||
<h2>Frappe Helpdesk</h2> | ||
<p align="center"> | ||
<p>Modern, Streamlined, Customer Service Software</p> | ||
</p> | ||
|
||
[frappedesk.com](https://frappedesk.com) | ||
|
||
<div align="center" style="max-height: 40px;"> | ||
<a href="https://frappecloud.com/helpdesk/signup"> | ||
<img src=".github/try-on-f-cloud-button.svg" height="50"> | ||
</a> | ||
|
||
<img src=".github/hd-logo.svg" alt="Frappe Helpdesk logo" width="100"/> | ||
<h1>Frappe Helpdesk</h1> | ||
|
||
**Open Source Business Intelligence Tool** | ||
|
||
![GitHub release (latest by date)](https://img.shields.io/github/v/release/frappe/helpdesk) | ||
[![codecov](https://codecov.io/github/frappe/helpdesk/branch/develop/graph/badge.svg?token=8ZXHCY4G9U)](https://codecov.io/github/frappe/helpdesk) | ||
|
||
</div> | ||
|
||
|
||
<div align="center"> | ||
<img src="./screenshot.webp" alt="Hero Image" width="72%" /> | ||
</div> | ||
<br /> | ||
<div align="center"> | ||
<a href="https://frappe.io/helpdesk">Website</a> | ||
- | ||
<a href="https://docs.frappe.io/helpdesk">Documentation</a> | ||
</div> | ||
|
||
--- | ||
## Frappe Helpdesk | ||
Frappe Helpdesk is an 100% open-source Ticket Management tool which helps you streamline your company's support, offers an easy setup, clean user interface, and automation tools to resolve customer queries efficiently. | ||
|
||
|
||
|
||
## Motivation | ||
Managing issues from our customers was a big challenge for us. We were using the ERPNext support module which was not very good in UI and the UX was also not good. We wanted to have a tool that can be easily integrated with our existing system and can be customized as per our needs. So we decided to build a Helpdesk tool that can be easily integrated with our existing system and can be customized as per our needs. | ||
|
||
Frappe Helpdesk offers an easy setup, clean user interface, and automation tools to resolve customer issues efficiently. It is based on Frappe Framework. It lets you streamline your company's support and helps you to efficiently manage your customer queries. It can help you to, | ||
## Key Features | ||
|
||
- Create tickets from email or help center | ||
- Empower customers with a comprehensive knowledge base and self-service portal | ||
- Automate redundant tasks like agent assignment and set up triggers to notify agents and customers based on certain events | ||
- **Agent and Customer Portal Views**: Dual portals for agents and customers to simplify issue submission and management. | ||
|
||
![screenshot](./screenshot.webp) | ||
- **Customizable SLAs**: Discover how you can set and track SLAs for better response times. | ||
|
||
## Installation | ||
- **Assignment Rules**: Custom auto-assignment of tickets based on priority, issue type, or workload. | ||
|
||
1. Install and setup bench by following [this guide](https://frappeframework.com/docs/user/en/installation) | ||
2. In the bench directory, run `bench start` and keep it running | ||
3. Open another terminal in bench directory, and run these commands | ||
- **Email Account Setup**: Set up email accounts to automatically create tickets from incoming emails. Choose from various Mail providers like Frappe Mail, Gmail, Outlook, Sendgrid, Sparkpost, Yahoo, Yandex, etc. | ||
|
||
``` | ||
bench get-app helpdesk | ||
bench new-site helpdesk.test | ||
bench --site helpdesk.test install-app helpdesk | ||
bench --site helpdesk.test add-to-hosts | ||
``` | ||
- **Canned Responses**: Pre-written replies for common queries to ensure quick and consistent communication. | ||
|
||
You can now access Helpdesk at `http://helpdesk.test` | ||
5. You can also run a development server by following theses steps, in Helpdesk | ||
directory (`apps/helpdesk`) | ||
- **Knowledge Base**: Learn how to create and manage help articles to empower users and reduce tickets. | ||
|
||
``` | ||
yarn | ||
yarn dev | ||
``` | ||
|
||
Development server will be now available at `http://localhost:8080` | ||
|
||
## Contributions and Community | ||
<details> | ||
<summary>Screenshots</summary> | ||
|
||
There are many ways you can contribute even if you don't code: | ||
![Helpdesk SS1](.github/query-builder.png) | ||
![Helpdesk SS1](.github/join-editor.png) | ||
![Helpdesk SS1](.github/chart-builder.png) | ||
</details> | ||
|
||
|
||
## Under the Hood | ||
|
||
- [**Frappe Framework**](https://github.com/frappe/frappe): A full-stack web application framework written in Python and Javascript. The framework provides a robust foundation for building web applications, including a database abstraction layer, user authentication, and a REST API. | ||
|
||
- [**Frappe UI**](https://github.com/frappe/frappe-ui): A Vue-based UI library, to provide a modern user interface. The Frappe UI library provides a variety of components that can be used to build single-page applications on top of the Frappe Framework. | ||
|
||
|
||
## Production Setup | ||
|
||
### Managed Hosting | ||
|
||
You can try [Frappe Cloud](https://frappecloud.com), a simple, user-friendly and sophisticated [open-source](https://github.com/frappe/press) platform to host Frappe applications with peace of mind. | ||
|
||
It takes care of installation, setup, upgrades, monitoring, maintenance and support of your Frappe deployments. It is a fully featured developer platform with an ability to manage and control multiple Frappe deployments. | ||
|
||
<div> | ||
<a href="https://frappecloud.com/helpdesk/signup" target="_blank"> | ||
<picture> | ||
<source media="(prefers-color-scheme: dark)" srcset="https://frappe.io/files/try-on-fc-white.png"> | ||
<img src="https://frappe.io/files/try-on-fc-black.png" alt="Try on Frappe Cloud" height="28" /> | ||
</picture> | ||
</a> | ||
</div> | ||
|
||
1. You can start by giving a star to this repository! | ||
2. If you find any issues, even if it is a typo, you can [raise an issue](https://github.com/frappe/desk/issues/new) to inform us. | ||
3. Join our [Telegram group](https://t.me/frappedesk) and share your thoughts. | ||
### Self Hosting | ||
|
||
## License | ||
Follow these steps to set up Frappe Helpdesk in production: | ||
|
||
[GNU Affero General Public License v3.0](/licence.md) | ||
**Step 1**: Download the easy install script | ||
|
||
```bash | ||
wget https://frappe.io/easy-install.py | ||
``` | ||
|
||
**Step 2**: Run the deployment command | ||
|
||
```bash | ||
python3 ./easy-install.py deploy \ | ||
--project=helpdesk_prod_setup \ | ||
--email=your_email.example.com \ | ||
--image=ghcr.io/frappe/helpdesk \ | ||
--version=stable \ | ||
--app=helpdesk \ | ||
--sitename subdomain.domain.tld | ||
``` | ||
|
||
Replace the following parameters with your values: | ||
- `your_email.example.com`: Your email address | ||
- `subdomain.domain.tld`: Your domain name where Helpdesk will be hosted | ||
|
||
The script will set up a production-ready instance of Frappe Helpdesk with all the necessary configurations in about 5 minutes. | ||
|
||
## Development Setup | ||
|
||
### Docker | ||
|
||
You need Docker, docker-compose and git setup on your machine. Refer [Docker documentation](https://docs.docker.com/). After that, follow below steps: | ||
|
||
**Step 1**: Setup folder and download the required files | ||
|
||
mkdir frappe-helpdesk | ||
cd frappe-helpdesk | ||
|
||
# Download the docker-compose file | ||
wget -O docker-compose.yml https://raw.githubusercontent.com/frappe/helpdesk/develop/docker/docker-compose.yml | ||
|
||
# Download the setup script | ||
wget -O init.sh https://raw.githubusercontent.com/frappe/helpdesk/develop/docker/init.sh | ||
|
||
**Step 2**: Run the container and daemonize it | ||
|
||
docker compose up -d | ||
|
||
**Step 3**: The site [http://helpdesk.localhost:8000/helpdesk](http://helpdesk.localhost:8000/helpdesk) should now be available. The default credentials are: | ||
- Username: Administrator | ||
- Password: admin | ||
|
||
### Local | ||
|
||
To setup the repository locally follow the steps mentioned below: | ||
|
||
1. Install bench and setup a `frappe-bench` directory by following the [Installation Steps](https://frappeframework.com/docs/user/en/installation) | ||
1. Start the server by running `bench start` | ||
1. In a separate terminal window, create a new site by running `bench new-site helpdesk.test` | ||
1. Map your site to localhost with the command `bench --site helpdesk.test add-to-hosts` | ||
1. Get the Helpdesk app. Run `bench get-app https://github.com/frappe/helpdesk` | ||
1. Run `bench --site helpdesk.test install-app helpdesk`. | ||
1. Now open the URL `http://helpdesk.test:8000/helpdesk` in your browser, you should see the app running | ||
|
||
## Learn and connect | ||
|
||
- [Telegram Public Group](https://t.me/frappedesk) | ||
- [Discuss Forum](https://discuss.frappe.io/c/frappehelpdesk/69) | ||
- [Documentation](https://docs.frappe.io/helpdesk) | ||
- [YouTube]([https://frappe.io](https://www.youtube.com/@frappetech)) | ||
|
||
<h2></h2> | ||
<div align="center" style="padding-top: 0.75rem;"> | ||
<a href="https://frappe.io" target="_blank"> | ||
<picture> | ||
<source media="(prefers-color-scheme: dark)" srcset="https://frappe.io/files/Frappe-white.png"> | ||
<img src="https://frappe.io/files/Frappe-black.png" alt="Frappe Technologies" height="28"/> | ||
</picture> | ||
</a> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,53 +1,54 @@ | ||
{ | ||
"name": "helpdesk-ui", | ||
"private": true, | ||
"version": "0.0.0", | ||
"scripts": { | ||
"dev": "vite", | ||
"preview": "vite preview", | ||
"build": "vite build --base=/assets/helpdesk/desk/ && yarn copy-html-entry", | ||
"serve": "vite preview", | ||
"copy-html-entry": "cp ../helpdesk/public/desk/index.html ../helpdesk/www/helpdesk/index.html" | ||
}, | ||
"dependencies": { | ||
"@headlessui/vue": "^1.7.22", | ||
"@iconify-json/lucide": "^1.1.99", | ||
"@iconify-json/ph": "^1.1.5", | ||
"@iconify/tools": "^2.2.6", | ||
"@iconify/vue": "^4.1.1", | ||
"@tailwindcss/line-clamp": "^0.4.4", | ||
"@tailwindcss/typography": "^0.5.9", | ||
"@tiptap/core": "^2.2.4", | ||
"@vee-validate/zod": "^4.8.2", | ||
"@vitejs/plugin-vue": "^4.0.0", | ||
"@vueuse/core": "^10.0.2", | ||
"autoprefixer": "^10.4.13", | ||
"dayjs": "^1.11.7", | ||
"echarts": "^5.4.1", | ||
"frappe-ui": "^0.1.53", | ||
"lodash": "^4.17.21", | ||
"lucide-static": "^0.276.0", | ||
"mime": "^3.0.0", | ||
"mitt": "^3.0.1", | ||
"pinia": "^2.0.33", | ||
"pluralize": "^8.0.0", | ||
"sanitize-html": "^2.10.0", | ||
"socket.io-client": "^4.7.2", | ||
"tailwindcss": "^3.2.7", | ||
"unplugin-icons": "^0.16.1", | ||
"unplugin-vue-components": "^0.25.2", | ||
"vee-validate": "^4.8.2", | ||
"vite": "^4.4.9", | ||
"vue": "^3.4.12", | ||
"vue-echarts": "^6.5.4", | ||
"vue-router": "^4.2.2", | ||
"vuedraggable": "^4.1.0", | ||
"zod": "^3.21.4" | ||
}, | ||
"resolutions": { | ||
"cheerio": "1.0.0-rc.12" | ||
}, | ||
"devDependencies": { | ||
"vite-plugin-pwa": "^0.20.5" | ||
} | ||
"name": "helpdesk-ui", | ||
"private": true, | ||
"version": "0.0.0", | ||
"scripts": { | ||
"dev": "vite", | ||
"preview": "vite preview", | ||
"build": "vite build --base=/assets/helpdesk/desk/ && yarn copy-html-entry", | ||
"serve": "vite preview", | ||
"copy-html-entry": "cp ../helpdesk/public/desk/index.html ../helpdesk/www/helpdesk/index.html" | ||
}, | ||
"dependencies": { | ||
"@headlessui/vue": "^1.7.22", | ||
"@iconify-json/lucide": "^1.1.99", | ||
"@iconify-json/ph": "^1.1.5", | ||
"@iconify/tools": "^2.2.6", | ||
"@iconify/vue": "^4.1.1", | ||
"@tailwindcss/line-clamp": "^0.4.4", | ||
"@tailwindcss/typography": "^0.5.9", | ||
"@tiptap/core": "^2.2.4", | ||
"@vee-validate/zod": "^4.8.2", | ||
"@vitejs/plugin-vue": "^4.0.0", | ||
"@vueuse/core": "^10.0.2", | ||
"@vueuse/integrations": "^12.0.0", | ||
"autoprefixer": "^10.4.13", | ||
"dayjs": "^1.11.7", | ||
"echarts": "^5.4.1", | ||
"frappe-ui": "^0.1.53", | ||
"lodash": "^4.17.21", | ||
"lucide-static": "^0.276.0", | ||
"mime": "^3.0.0", | ||
"mitt": "^3.0.1", | ||
"pinia": "^2.0.33", | ||
"pluralize": "^8.0.0", | ||
"sanitize-html": "^2.10.0", | ||
"socket.io-client": "^4.7.2", | ||
"tailwindcss": "^3.2.7", | ||
"unplugin-icons": "^0.16.1", | ||
"unplugin-vue-components": "^0.25.2", | ||
"vee-validate": "^4.8.2", | ||
"vite": "^4.4.9", | ||
"vue": "^3.4.12", | ||
"vue-echarts": "^6.5.4", | ||
"vue-router": "^4.2.2", | ||
"vuedraggable": "^4.1.0", | ||
"zod": "^3.21.4" | ||
}, | ||
"resolutions": { | ||
"cheerio": "1.0.0-rc.12" | ||
}, | ||
"devDependencies": { | ||
"vite-plugin-pwa": "^0.20.5" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.