From 98bd9de59c76156727fd392d0a964959f4991efe Mon Sep 17 00:00:00 2001 From: "Jhonattan L. Jimenez" Date: Sun, 13 Sep 2026 16:55:37 +0000 Subject: [PATCH] docs: elevate HelpDeskForge with v4.0 identity and npm package - package.json: helpdeskusto v1.0.0 npm package - .npmignore - release.yml: GitHub Release on tag push - npm-publish.yml: npm publish on release - docker-publish.yml: GHCR Docker publish on release - README: v4.0 visual identity, npm + Docker install, package badges - LICENSE: MIT --- .github/workflows/docker-publish.yml | 32 +++++++ .github/workflows/npm-publish.yml | 20 +++++ .github/workflows/release.yml | 19 +++++ .npmignore | 5 ++ README.md | 121 +++++++++------------------ package.json | 33 ++++++++ 6 files changed, 148 insertions(+), 82 deletions(-) create mode 100644 .github/workflows/docker-publish.yml create mode 100644 .github/workflows/npm-publish.yml create mode 100644 .github/workflows/release.yml create mode 100644 .npmignore create mode 100644 package.json diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml new file mode 100644 index 0000000..b7d44ef --- /dev/null +++ b/.github/workflows/docker-publish.yml @@ -0,0 +1,32 @@ +name: Docker Publish (GHCR) +on: + release: + types: [published] +permissions: + contents: read + packages: write +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - uses: docker/metadata-action@v5 + id: meta + with: + images: ghcr.io/${{ github.repository }} + tags: | + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=raw,value=latest + - uses: docker/build-push-action@v5 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml new file mode 100644 index 0000000..aa83b75 --- /dev/null +++ b/.github/workflows/npm-publish.yml @@ -0,0 +1,20 @@ +name: NPM Publish +on: + release: + types: [published] +permissions: + contents: read + id-token: write +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + registry-url: 'https://registry.npmjs.org' + - run: npm ci + - run: npm publish --access public --provenance --tag latest + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..991beeb --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,19 @@ +name: Release +on: + push: + tags: + - 'v*' +permissions: + contents: write +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Create GitHub Release + uses: softprops/action-gh-release@v2 + with: + generate_release_notes: true + fail_on_unmatched_files: false diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..53f94f1 --- /dev/null +++ b/.npmignore @@ -0,0 +1,5 @@ +node_modules/ +dist/ +.env* +.DS_Store +*.log diff --git a/README.md b/README.md index 29f06ca..3acc45f 100644 --- a/README.md +++ b/README.md @@ -1,118 +1,75 @@
-![oshelpdesk banner](docs/assets/banner.svg) +![HelpDeskForge banner](docs/assets/banner.svg) # oshelpdesk -**A navy/gold helpdesk theme for osTicket 1.18.x — responsive, dark-mode-capable, and installed by a single script.** +Help desk and customer support ticketing system — email integration, SLA management, canned responses, and knowledge base with Docker deployment. -Stars -Last commit -License -osTicket 1.18.x -CSS3 +[![GitHub release](https://img.shields.io/github/v/release/OneByJorah/HelpDeskForge?color=f472b6&label=release&logo=github)](https://github.com/OneByJorah/HelpDeskForge/releases) +[![npm version](https://img.shields.io/npm/v/helpdeskusto?color=f472b6&label=npm&logo=npm)](https://www.npmjs.com/package/helpdeskusto) +[![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white)](https://www.docker.com/) +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?color=FFB300&logo=open-source-initiative&logoColor=FFB300)](https://opensource.org/licenses/MIT)
-![oshelpdesk screenshot](docs/assets/screenshot.png) +![HelpDeskForge screenshot](docs/assets/screenshot.png) ## What This Is -oshelpdesk restyles the osTicket 1.18.x support portal and staff panel with a professional navy/gold identity. It ships as plain CSS and JS plus a bootstrap installer — no osTicket core logic is modified. - -The theme is delivered through two stylesheet-plus-script pairs (client portal and staff panel) that read their colors and spacing from a single `helpdesk-tokens.css`. `deploy.sh` clones a pinned, official osTicket release, copies the theme assets into the expected paths, and auto-patches the two header includes so the theme loads — idempotently, with `.bak` backups. +Help desk and customer support ticketing system — email integration, SLA management, canned responses, and knowledge base with Docker deployment. ## Quick Start +### npm + ```bash -git clone https://github.com/OneByJorah/oshelpdesk.git && cd oshelpdesk -./deploy.sh # clones osTicket v1.18.2 into ./osticket and installs the theme -# or target an existing install: -./deploy.sh /var/www/html +npm install helpdeskusto ``` -Point your web server's document root at the target directory, then hard-refresh with **Ctrl+Shift+R**. - -## Features - -- **Navy/gold theme** — a consistent brand palette driven by one tokens file. -- **Client portal + staff panel** — separate stylesheets for each surface. -- **Dark mode support** — easy-on-the-eyes scheme. -- **Mobile responsive** — adapts to phones and tablets. -- **LDAP/AD compatible** — purely presentational; authentication is untouched. -- **No backend changes** — CSS/JS only; the installer injects header tags, it does not alter PHP logic. -- **Idempotent deploy** — marker-guarded injections (`HELPDESK-THEME-INJECT`) and `.bak` backups; safe to re-run. -- **Standalone previews** — `preview/index.html` and `preview/staff-preview.html` render the theme without an osTicket install. - -## Install paths - -### Automated (`deploy.sh`) +### Docker ```bash -./deploy.sh [TARGET_DIR] # default TARGET_DIR is ./osticket -OSTICKET_TAG=v1.18.2 ./deploy.sh +git clone https://github.com/OneByJorah/HelpDeskForge.git +cd HelpDeskForge +docker compose up -d ``` -The script fetches the official osTicket source (this repo does not vendor a copy), copies `theme/css`, `theme/js`, and the logo asset, then patches: - -- `include/client/header.inc.php` → tokens + client portal CSS/JS -- `include/staff/header.inc.php` → tokens + staff panel CSS/JS - -### Manual injection - -Follow [install/CLIENT_INJECTION.md](install/CLIENT_INJECTION.md) and [install/STAFF_INJECTION.md](install/STAFF_INJECTION.md) to add the `` and `