Travel Manager — quality report QR-26-00054 | Vibe96

‹ Travel ManagerQuality report QR-26-00054

Travel Manager
Vibe96 quality report

Travel Manager

Tour operator back office for small agencies: tours, departures, bookings, payments and a public enquiry site.

Product ID
B0344-48511
Builder
Infymerce
Version reviewed
1.0.0 · released 23 Oct 2026
Stack
Laravel 13.17 + Filament 5.10 · PHP 8.3+ · MySQL 8.0 / MariaDB 10.6 / SQLite 3
Built with
OpenAI Codex, Claude Code, Cursor, GitHub Copilot
Review period
20 Oct 2026 – 23 Oct 2026 · 1 round of changes
93out of 100 Passed with 3 warningsPass mark 75 and no failing check.

Scores

Security95
Code structure78
Docs & completeness93
Dependency health95
Build & deploy92
  1. AI code audit6 checks · 20 Oct 2026
  2. Installed & run23 Oct 2026
  3. Demo vs delivered23 Oct 2026
  4. Final sign-off23 Oct 2026

At a glance

  • Installed and run from the delivered code — 8 of 8 checks answered yes.
  • Live demo compared with the delivered code — 7 of 7 checks answered yes.
  • 14 of 15 promised items delivered (setup guide, example config and the rest).
  • Security scored 95/100 with no failing check.
  • 3 open warnings — explained in part 1.
Part 1

AI code audit

The full source archive was read by our AI auditor against each check. It reads the code — it does not run it; running it is part 2.

CheckWhat we foundScoreResult
Secrets & credentialsAll sensitive configuration uses environment variables (DB_PASSWORD, APP_KEY, SEED_ADMIN_PASSWORD, etc.) with clear documentation in .env.example. The regex candidates are either documentation references, placeholder examples in skill files, or proper environment variable usage. No real credentials, API keys, or secrets are committed to the repository.100Pass
Dependency vulnerabilitiesAll production dependencies are pinned in composer.lock (402 KB) and package-lock.json. PHP packages are current: Laravel 13.17, Filament 5.10, PHP 8.3+. JavaScript dependencies use Vite 8.0.0 and Tailwind 4.3.3. No known critical vulnerabilities detected. A few dev dependencies could be updated but pose no security risk.95Pass
Authorisation & access controlAll create/update/delete endpoints require authentication and use Filament policies correctly. Admin panel is fully guarded. Public enquiry form has basic bot protection. Minor issues: manifest route redirects unauthenticated users instead of returning 401, and the trip page (signed URL) lacks explicit booking ownership verification in the controller.92Warning
Database access rulesNo SQL injection risks or unscoped destructive queries found. All queries use parameter binding or Eloquent. Schema is complete with proper foreign keys and cascades. However, several foreign key columns lack indexes (departure_id, tour_id, customer_id, booking_id in various tables), which will hurt performance as data grows.92Warning
Code structure & duplicationThe application demonstrates solid architecture with clear service layer (BookingService, BillingService, etc.), proper policy-based authorization, and well-organized Filament resources. However, there is significant duplication of skill documentation files across `.agents/` and `.claude/` directories that should be consolidated. A few minor hard-coded values and oversized resource files could be refactored.78Warning
Build reproducibilityThe project is fully reproducible with clear dependencies in a project file and a working Docker setup. HowToSetup.md provides comprehensive instructions but has a few minor inconsistencies: it references a non-existent .env.docker file, doesn't specify the Node.js version requirement (though package.json does), and the MySQL setup could be clearer about character set requirements.92Pass

Open warnings

Problems that did not stop the listing. They stay on the product page until a later version fixes them.

Warning 1 Strong authentication on all mutating endpoints; minor ownership gaps on read-only routes

All create/update/delete endpoints require authentication and use Filament policies correctly. Admin panel is fully guarded. Public enquiry form has basic bot protection. Minor issues: manifest route redirects unauthenticated users instead of returning 401, and the trip page (signed URL) lacks explicit booking ownership verification in the controller.

Warning 2 Database access is safe; minor schema gaps: missing indexes on foreign keys

No SQL injection risks or unscoped destructive queries found. All queries use parameter binding or Eloquent. Schema is complete with proper foreign keys and cascades. However, several foreign key columns lack indexes (departure_id, tour_id, customer_id, booking_id in various tables), which will hurt performance as data grows.

Warning 3 Good separation of concerns with minor duplication in agent/claude skill directories

The application demonstrates solid architecture with clear service layer (BookingService, BillingService, etc.), proper policy-based authorization, and well-organized Filament resources. However, there is significant duplication of skill documentation files across `.agents/` and `.claude/` directories that should be consolidated. A few minor hard-coded values and oversized resource files could be refactored.

Requirement list

What the builder agreed to deliver before uploading — 14 of 15 met.

  • Complete source for every component Met
  • No real credentials in the archive Met
  • Builds from a clean machine Met
  • Database script or migrations Met
  • Authentication and roles on every mutating endpoint Met
  • Pinned dependencies without critical CVEs (nice)Partial
  • Documentation set (nice)Met
  • Working live demo Met
  • README.md Met
  • HowToSetup.md Met
  • CLAUDE.md (or AGENTS.md) (nice)Met
  • CHANGELOG.md (nice)Met
  • .env.example Met
  • a project file Met
  • a project file (nice)Met
Part 2

Human review

Reviewers from the Vibe96 team in Dubai worked through each question below; a final reviewer signed it off.

Stage 1 — Installed and run from the delivered code

Completed 23 Oct 2026

A reviewer installed the product on a clean machine, following only the guide that ships with it.

QuestionAnswerReviewer's note
Packages restored without errorsYes
Solution builds cleanYes
Database created from the shipped script or migrationsYes
First sign-in works with the documented stepsYes
Setup guide is accurate and completeYes
Every module in the feature list opens and worksYes
No real secrets in the archiveYes
Branding and company details can be changed without codeYes

Stage 2 — Live demo compared with the delivered code

Completed 23 Oct 2026

A second reviewer checked that what the listing and demo show is what the buyer receives.

QuestionAnswerReviewer's note
Demo URL is reachableYes
Demo credentials workYes
Demo runs the same version as the archiveYes
All five differentiators are visible in the demoYes
Screenshots match the demoYes
Nothing in the demo is missing from the codeYes
Datasheet claims are accurateYes

Changes asked for during review

  • Round 1: changes requested on 22 Oct 2026; the builder fixed them and uploaded again.
  • Sign-off: approved for sale on 23 Oct 2026 with 3 warnings shown publicly.

What this report covers — and what it doesn't

  • It covers version 1.0.0 exactly as the buyer downloads it: the source archive, the setup guide and the live demo on the dates above.
  • It is not a penetration test, a performance or load test, or a legal review of third-party package licences.
  • Scores are a point in time. Libraries age; a later version is audited again and gets its own report.
  • Your setup matters. Hosting, configuration and changes made after purchase are outside this review.
  • How the score is made: each AI check is scored 0–100 and weighted (security counts most). A listing needs 75 or more, no failing check, and the human review passed.
  • Always try the live demo before buying, and ask the builder questions from the product page.

Vibe96 FZ-LLC, Dubai, UAE. This report describes the product at the time of review and is not a warranty.