Skip to content

SpiriitLabs/JiraServiceDesk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Jira Service Desk

A self-hosted web portal that connects to the Jira Cloud API and simplifies issue tracking for multiple users through a single authenticated account.
Built with Symfony 7.2, Docker, and FrankenPHP, this project includes project/user management, ticket interaction, Kanban boards, notifications, and more.

License: MIT Symfony 7.2 PHP Latest Release


✨ Features

  • Login portal with user management
  • Multi-project dashboard and statistics
  • View, comment, and update Jira issues
  • Assignee, priority, type, and status editing
  • Attachment preview and download
  • Kanban board synced with Jira project configuration
  • Notification system (via Jira Webhook)
  • Admin panel to manage users, projects, and logs

🛠 Tech Stack

  • Backend: Symfony 7.2, PHP 8.3+
  • Frontend: Webpack Encore (JS & CSS bundling)
  • Runtime: FrankenPHP (standalone binary)
  • Dev Environment: Docker + Make
  • Database: MariaDB (or any DB supported by Symfony)
  • Jira Integration: php-JiraCloud-RESTAPI

🚀 Getting Started

✅ Development Setup

Make sure Docker and npm are installed, then:

make start

The app will be available at: https://localhost

📦 Production / Binary Setup

Download the latest FrankenPHP binary build from GitHub Releases and follow the binary setup guide.


⚙️ Environment Variables

The following variables must be configured (via .env or your server):

###> symfony/framework-bundle ###
APP_ENV=prod
APP_SECRET=your-secret-key
###<> symfony/framework-bundle ###

###> symfony/mailer ###
MAILER_DSN=smtp://user:pass@mailserver
[email protected]
###< symfony/mailer ###

###> doctrine/doctrine-bundle ###
DATABASE_URL=mysql://user:pass@db:3306/dbname
###< doctrine/doctrine-bundle ###

###> hosts ###
ROUTER_REQUEST_CONTEXT_HOST=localhost
ROUTER_REQUEST_CONTEXT_SCHEME=https
###< hosts ###

###> lesstif/php-jira-rest-client ###
[email protected]
JIRAAPI_V3_PERSONAL_ACCESS_TOKEN=your-jira-token
JIRAAPI_V3_HOST=https://your-domain.atlassian.net
###< lesstif/php-jira-rest-client ###

###> spiriitlabs/jira-service-desk ###
JIRA_ACCOUNT_ID=''
DEFAULT_PRIORITY_NAME=''
NOT_AVAILABLE_TYPES_JIRA_ID="[]"
###< spiriitlabs/jira-service-desk ###

🧭 User Flow

  1. Authentication:

    • Users log in via the web portal.
  2. Dashboard:

    • After logging in, users are presented with a dashboard that shows an overview of Jira issues and statistics, including:
      • Active projects
      • Assigned tickets
      • Favorite(s)
  3. Viewing & Managing Jira Issues:

    • Users can view a list of Jira issues within their assigned projects.
    • Each issue displays:
      • Issue title, description, and comments.
      • Attachments (downloadable and previewable).
      • Key fields such as assignee, priority, issue type, and current status.
  4. Commenting & Updating Issues:

    • Users can add comments to Jira issues.
    • Admins and authorized users can update key fields of an issue, such as:
      • Assignee: Change who is responsible for the task.
      • Priority: Update the issue’s priority.
      • Type: Modify issue type (e.g., Bug, Task, Story).
      • State: Change the status (e.g., In Progress, Done).
  5. Kanban Board View:

    • A Kanban board view is available for project-related Jira tickets.
    • Users can see the issue status and manage issues via drag-and-drop.
  6. Notifications:

    • Users receive notifications when:
      • New tickets are created.
      • Tickets are updated (comments added, fields changed, etc.).
      • New comment are created.
      • Comment is updated.
    • Notifications are handled through Jira Webhooks, so real-time updates are reflected in the app.
  7. Admin Panel:

    • Admin users can manage the system, including:
    • Adding/updating/removing users.
    • Adding/removing projects.
    • Assigning users to projects.
    • Viewing and filtering logs.
    • Managing settings and configurations.

🔔 Webhook Integration

The application supports real-time notifications from Jira using webhooks.
You can follow the detailed setup instructions in documentation/deployment.md to integrate the webhook functionality and start receiving updates from Jira.


📄 License

This project is licensed under the MIT License. See the LICENSE file for details.


🙌 Credits & Acknowledgements


About

Repository de l'application Jira Service Desk

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •