sharpapi/laravel-resume-job-match-score
Laravel package that uses SharpAPI to calculate a resume-to-job match score, helping you rank candidates and assess fit. Simple integration for adding AI-powered job matching to your PHP app.
sharpapi/php-core ^1.4.1. The newer core is important: failed jobs with null results no longer raise TypeError, and missing API keys throw a clear InvalidArgumentException.php artisan vendor:publish --tag=sharpapi-resume-match-score
SHARP_API_KEY in .env. If you use Laravel Boost, look first at the shipped core guideline (resources/boost/guidelines/core.blade.php) and the sharpapi-resume-job-match-score skill.SharpApiJob, then call fetchResults() to retrieve the match score. Start with one queued job so you can observe polling and result handling before wiring it into a larger workflow.fetchResults() from a queued Laravel job rather than inside a web request. Set the queue job timeout high enough for your polling strategy.Retry-After; setting SHARP_API_JOB_STATUS_USE_POLLING_INTERVAL=true makes fetchResults() use SHARP_API_JOB_STATUS_POLLING_INTERVAL instead. Use this when you need predictable intervals for queue workers or rate-limit control.sharpapi/php-core ^1.4.1, a failed job with a null result returns a SharpApiJob; inspect the job status/result before reading the score. Catch InvalidArgumentException early for missing API keys, especially in queue workers and CI environments.sharpapi-resume-job-match-score skill to scaffold usage patterns, but keep your own domain validation around resume/job inputs.sharpapi-resume-match-score, not sharpapi-resume-job-match-score as older README text suggested. Use the corrected tag.php artisan config:clear
SHARP_API_JOB_STATUS_POLLING_INTERVAL too aggressively. Overriding Retry-After can increase API load and trigger rate limits; keep it aligned with your queue concurrency.SHARP_API_KEY. The improved exception is clearer, but it still fails at runtime if the key is absent.fetchResults() always returns a populated score. A failed job may now return a SharpApiJob with a null result; check status and log the job payload before accessing score fields.sharpapi/php-core is actually updated to ^1.4.1. If Composer is locked to an older core, the null-result and missing-key behavior fixes will not apply.How can I help you explore Laravel packages today?