# WinniePatGG's Ticket Support ![Docker Pulls](https://img.shields.io/docker/pulls/winniepat/ticketsupport) ![GitHub License](https://img.shields.io/github/license/WinniePatGG/TicketSupport) ![Docker Stars](https://img.shields.io/docker/stars/winniepat/ticketsupport) ## Environment Variables (.env) ### Server Variables | Key | Value | |:---------------|:----------------------------------------------:| | PORT | Default: 3000 ; Port the service is running on | | SESSION_SECRET | Long Random String that is used for sessions | ### Admin Seeding (Initial Admin Account) | Key | Value | |:---------------|:---------------------------------------------------------------:| | ADMIN_EMAIL | Default: admin@example.com; Email for the initial admin account | | ADMIN_PASSWORD | Default: admin123; Password for the initial admin account | ### Google OAuth 2.0 | Key | Value | |:---------------------|:--------------------------------------:| | GOOGLE_CLIENT_ID | Email for the initial admin account | | GOOGLE_CLIENT_SECRET | Password for the initial admin account | | GOOGLE_CALLBACK_URL | Password for the initial admin account | ### SMTP (Email) | Key | Value | |:------------|:--------------------------------------------------------------:| | SMTP_HOST | Your SMTP Host | | SMTP_PORT | Your SMTP Port | | SMTP_USER | Your SMTP User | | SMTP_PASS | Your SMTP User password | | SMTP_SECURE | true or false | | SMTP_FROM | Default: "Support "; The from message | ### Discord webhook | Key | Value | |:--------------------|:------------------------------:| | DISCORD_WEBHOOK_URL | The url of you discord webhook | # Information The Service creates a support.sqlite3 file that stores all data the service needs. # Getting Started ### Docker - Create a folder `support-service` - Download the `docker-compose.yml` from the repo - Create a new directory `app` - Put all files into the `app` directory - Run `docker compose up -d` in the directory with the `docker-compose.yml` ### Standalone - `git clone https://github.com/WinniePatGG/TicketSupport.git` - `cd TicketSupport` - `npm install` - `npm run start` # Important Notes - The Google login button appears only when GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET are set. - If you change PORT, also update GOOGLE_CALLBACK_URL and the redirect URI in Google Cloud. - I couldn't test the SMTP stuff, but it should work (I hope). If not, let me know.