This is currently not meant to be used in production.
BountyDesk aims to be a simplistic solution for (IT-) Helpdesk systems where Jira, Redmine and others seem too big. With this I aim for the IT-departments of e.g. schools.
Instead of admin/user privilege management, access/edit privileges are reputation based. It does only support ticket management and nearly nothing else. With the first stable release it may provide these features:
- Public ticket endpoint
- RESTful API and Backend
- Email notification
- Public/Private comments on support tickets
- Seamless wiki integrations (as it provides no wiki)
Use admin/admin for an account with 100000 reputation.
git clone https://github.com/ikarulus/BountyDesk.git
cd
in your "BountyDesk" directorynpm install
- Install MongoDB and Redis
- Wire up MongoDB and Redis database connection in the configuration file
- (Optional, for arch users) Start databases with
./start_dbs.sh
. Must be executable. For other distros you have to find your own way. - Launch via
node app.js
ornpm start
Find the prebuilt Docker image on Dockerhub: https://hub.docker.com/r/ikarulus/dountydesk/
This project provides a docker-compose-yml.
Use docker-compose up
to pull and start the stack.
I wouldn't deploy this in a large scale. As I'm not an experienced JS developer I can't guarantee for anything including slain kitten. I try to integrate several security best practises. See TODO. Please consider using SLL/TLS - e.g. via nginx reverse proxy and letsencrypt's free certificates.
🔑: Security
- ticket endpoint
- integrate rate limiting for Public ticket endpoint 🔑
- tickets
- assignment
- reward distribution
- blocked
- improve API
- dont send archived by default
- node multithreading
- security checklist 🔑
- xss
- packages
- intercept errors
- rename application
- validate forms
- error/success messages
- disable forms by reputation
- search
- status comments
- wiki integration
- Docker
- Container
- Compose
- blocked diagram
- backend tests 🔑
- status comments
- public/internal
- statistics endpoint
- grafana integration