{"id":18246616,"url":"https://github.com/douban/helpdesk","last_synced_at":"2025-08-01T13:04:48.438Z","repository":{"id":36969550,"uuid":"268746707","full_name":"douban/helpdesk","owner":"douban","description":"Yet another helpdesk based on multiple providers","archived":false,"fork":false,"pushed_at":"2024-03-28T06:44:20.000Z","size":3705,"stargazers_count":22,"open_issues_count":24,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-04-15T00:13:43.889Z","etag":null,"topics":["airflow","helpdesk","selfservice","spincyle","st2","stackstorm"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/douban.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-02T08:38:05.000Z","updated_at":"2024-06-11T05:38:23.470Z","dependencies_parsed_at":"2023-11-29T07:27:54.696Z","dependency_job_id":"0ebce280-c547-4fb6-bfeb-b21327d283e4","html_url":"https://github.com/douban/helpdesk","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/douban/helpdesk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fhelpdesk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fhelpdesk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fhelpdesk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fhelpdesk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/douban","download_url":"https://codeload.github.com/douban/helpdesk/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fhelpdesk/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268229200,"owners_count":24217004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airflow","helpdesk","selfservice","spincyle","st2","stackstorm"],"created_at":"2024-11-05T09:26:59.633Z","updated_at":"2025-08-01T13:04:48.396Z","avatar_url":"https://github.com/douban.png","language":"Python","readme":"# helpdesk\n\n## Development\n\n### backend\n\n```shell\n\npython3.7 -m venv venv\nsource venv/bin/activate\n\n# edit local_config.py\ncp local_config.py.example local_config.py\n\nvi local_config.py\n\n# init database\npython -c 'from helpdesk.libs.db import init_db; init_db()'\n\n# init default policy\nPS: the ticket related approval flow(policy), Confirm whether there is a default approval process before ticket operate\n\n# export SSL_CERT_FILE='/etc/ssl/certs/ca-certificates.crt'\nuvicorn helpdesk:app --host 0.0.0.0 --port 8123 --log-level debug\n```\n\nVisit \u003chttp://localhost:8123\u003e on your browser.\nThe default listening port of backend is 8123\n\nPS: The user interface in backend web pages will be replaced by new standalone frontend in next major release, please see ``Standalone frontend`` if you want to modify the ui.\n\n### Standalone frontend\nFirst make sure you have installed latest [nodejs](https://nodejs.org/en/download/)\n\n```\ncd frontend\nnpm install\nnpm run dev\n```\nFollow the link in the console.\n\nPS: If your backend is not hosted in localhost or listening to port other than 8123, please modify the proxyTable config in ``frontend/config/index.js`` , see [Vue Templates Doc](https://vuejs-templates.github.io/webpack/proxy.html) for details\n\n### Add new python dependency\n\n```\npip install \u003cpackage\u003e\n# add to in-requirements.txt\nvi in-requirements.txt\n# generate new requirements.txt (lock)\npip freeze \u003e requirements.txt\n```\n\n## Deployment\n\n### Kubernetes\n\n```shell\n# build docker image\nbuild -t helpdesk .\n\n# push this image to your docker registry\ndocker tag helpdesk \u003ctarget image\u003e:\u003ctag\u003e\ndocker push \u003ctarget image\u003e:\u003ctag\u003e\n\n# edit helm values\ncp contrib/charts/helpdesk/values.yaml values.yaml\nvi values.yaml\n\n# install helm package\nhelm upgrade \\\n    --install \\\n    --name helpdesk contrib/charts/helpdesk \\\n    --namespace=helpdesk \\\n    -f values.yaml\n```\n\nGet the url from your nginx ingress and visit it.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdouban%2Fhelpdesk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdouban%2Fhelpdesk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdouban%2Fhelpdesk/lists"}