Vendor & Dependencies

CruiseAppy relies on several third-party libraries and dependencies to provide robust functionality, seamless integrations, and secure operations. These dependencies are managed via Composer and stored in the plugin's vendor/ directory.

Key Dependencies

Library / Package Purpose / Usage
guzzlehttp/guzzle HTTP client for API requests to TravelTek and other services.
phpmailer/phpmailer Email sending for booking confirmations and notifications.
symfony/console Command-line interface for automation scripts and WP-CLI integration.
monolog/monolog Logging framework for error tracking and audit trails.
vlucas/phpdotenv Environment variable management for secure configuration.
league/csv CSV parsing and generation for import/export operations.
composer/installers Ensures proper installation of WordPress plugins via Composer.
acf-pro/acf-pro Advanced Custom Fields Pro for custom meta fields and UI components.
wp-cli/wp-cli WP-CLI for command-line WordPress management and automation.
roots/wp-password-bcrypt Enhanced password hashing for WordPress security.
phpseclib/phpseclib Secure FTP and SSH connections for data import/export.
psr/log Standardized logging interface for interoperability.

Managing Dependencies

  • Dependencies are defined in composer.json within the plugin directory.
  • Run composer install to fetch and update required libraries.
  • Keep dependencies up to date for security and compatibility.
  • Review the technical specification PDF for recommended versions and integration notes.

Security & Compliance

  • Only trusted and actively maintained libraries are included.
  • Regularly audit dependencies for vulnerabilities using tools like composer audit.
  • Follow PCI DSS and GDPR guidelines for any libraries handling sensitive data.

Custom Integrations

  • Additional libraries may be included for specific integrations (e.g., payment gateways, FTP clients).
  • Refer to the plugin source and technical specification for a complete list of required packages.