Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ticketit Laravel Package

ctos-app/ticketit

Laravel 5.1+ helpdesk ticketing system that plugs into Laravel’s built-in users/auth. Supports roles (users/agents/admins), ticket creation and comments, auto-agent assignment by department/queue, admin dashboard with stats, localization packs, and image uploads.

View on GitHub
Deep Wiki
Context7

A simple helpdesk tickets system for Laravel 5.1+ which integrates smoothly with Laravel default users and auth system, demo is available at: http://ticketit.kordy.info/tickets

Frequently asked questions about Ticketit
Does Ticketit work with Laravel 9 or 10? The README mentions Laravel 5.1+ but no recent updates.
Ticketit was last updated in 2018 and officially supports Laravel 5.1–5.6. For Laravel 9/10, you’ll need to manually override dependencies (e.g., force Laravel 8.x compatibility via `composer.json`) and test thoroughly. The package lacks native support for newer Laravel versions, so assess compatibility risks before adoption.
How do I integrate Ticketit with my existing Laravel auth system if I’m not using the default users table?
Ticketit relies on Laravel’s default `users` table and auth system. If your app uses a custom auth system, you’ll need to extend the package’s `User` model or create a custom adapter to bridge your auth logic with Ticketit’s role-based permissions (users/agents/admins). This may require modifying the package’s service provider and middleware.
Can Ticketit auto-assign tickets to agents based on custom rules (e.g., skills, availability) instead of just lowest queue?
Out of the box, Ticketit auto-assigns tickets to the agent with the lowest queue in a specified department. To implement custom rules (e.g., skills or availability), you’d need to override the `assignTicketToAgent()` logic in the package’s `TicketController` or create a custom event listener to intercept ticket assignment.
What’s the best way to handle large volumes of tickets (e.g., 10K+ per month) with Ticketit?
Ticketit isn’t optimized for high-volume ticketing. For scalability, consider adding database indexing to `tickets` and `ticket_comments` tables, implementing caching for ticket lists (e.g., Redis), and processing bulk operations via Laravel queues. The package also lacks built-in pagination optimizations, so test performance under load.
Are there any security risks using Ticketit, given its last commit was in 2018?
Yes, the package’s outdated status introduces risks like unpatched Laravel/PHP vulnerabilities (e.g., Carbon, Illuminate). Run `composer why-not` and `sensio-labs/security-checker` to audit dependencies. Mitigate risks by containerizing Ticketit (Docker) to isolate it from your main app and disabling features like attachments if storage is unreliable.
How do I customize the Ticketit admin dashboard or add new stats/graphs?
The admin dashboard uses Blade templates and Laravel Datatables. To customize it, override the views in `resources/views/vendor/ticketit/` or extend the `TicketitServiceProvider` to add new charts/graphs. For dynamic stats, hook into Laravel events (e.g., `ticket.created`) or modify the `TicketController` to inject custom data.
Does Ticketit support multi-tenancy or separate databases for different clients?
No, Ticketit does not support multi-tenancy or database-per-tenant setups. All tickets and attachments are stored in the shared database. For multi-tenancy, you’d need to extend the package to include tenant IDs in migrations or use a middleware to scope queries by tenant.
Can I use Ticketit with a frontend framework like Vue.js or React instead of Blade?
Ticketit is designed for Blade templates and doesn’t natively support Vue.js or React. To integrate with a SPA, you’d need to build a custom API endpoint (e.g., using Laravel’s `Route::apiResource`) to fetch ticket data and handle authentication via Laravel Sanctum or Passport.
How do I localize Ticketit for a language not included in the default packs?
Ticketit includes language packs for Arabic, German, Spanish, etc., but adding a new language requires editing the `resources/lang/` files or extending the localization system. Override the `TicketitServiceProvider` to load custom language files or use Laravel’s `trans()` helper in your views.
What alternatives to Ticketit exist for Laravel that are actively maintained?
For actively maintained alternatives, consider **Laravel Helpdesk** (by BeyondCode), **Spatie Ticket System**, or **Filament Helpdesk** (for Filament-based apps). These packages offer modern features like REST APIs, webhooks, and better Laravel 9/10 compatibility. Evaluate their feature sets against your needs before migrating.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope