A WordPress plugin for filmmakers to track ROI on their equipment rentals. Created to solve the common issue of not knowing whether gear investments are actually profitable, helping to make more informed purchasing decisions.
- Track gear details (purchase price, current value, daily rate)
- Organize by categories and brands
- Quick inline editing with double-click
- Bulk actions (duplicate, delete)
- Import/Export as JSON
- Serial number tracking
- Image management
- Track rental sessions and earnings
- Package deal support
- Client management
- Individual item vs package pricing
- Automatic discount calculation
- PDF rental sheet generation
- ROI tracking per item
- Revenue statistics
- Most/least profitable items
- Monthly trends
- Client revenue tracking
- Purchase value vs rental income
- Public equipment catalog via shortcode
[equipment_list] - Searchable/filterable interface
- Category grouping
- Technical specs formatting
- Lightbox image viewing
- Optional pagination
- Secure API access with secret key authentication
- Complete equipment, client, and rental data access
- Statistics endpoint with year filtering
- Header or query parameter authentication
- Comprehensive documentation in API.md
- Model Context Protocol (MCP) server for AI assistant integration
- Tools for equipment, client, and rental management
- Statistics and reporting via AI assistants
- Works with Claude Desktop and other MCP clients
- Available as a separate package: film-equipment-rental-mcp
- PHP 8.2 or higher
- WordPress 5.0 or higher
- Download the latest stable release ZIP from the GitHub releases page.
- Upload the plugin ZIP via WordPress admin (Plugins → Add New → Upload Plugin) or extract to
/wp-content/plugins/. - Activate the plugin through the 'Plugins' screen in WordPress.
- Configure settings under "Equipment Rental".
Important: Do not download the source code directly from the repository - always use the release ZIP files which include all required dependencies.
- Clone the repository
- Run
composer installin the plugin directory - Activate the plugin in your WordPress development environment
The plugin supports automatic updates from GitHub Releases. When a new version is released:
- WordPress will detect the update automatically
- Admins can update via WordPress admin (Plugins → Update)
- The plugin downloads the release .zip file (which includes all dependencies)
Updates are pulled from GitHub Releases, NOT from the raw source code.
- Currency (symbol and position)
- Date format
- Items per page
- Category grouping
- Pagination
- Similar items grouping
- Import/Export equipment data
- Import/Export rental history
- Import/Export client data
- Reset database (CLI)
- Generate and manage API keys
- View endpoint documentation
- Copy-to-clipboard key management
- See API.md for complete API documentation
# Reset plugin data
wp fer_reset
# Import sample data
wp fer_example_data
# Import from JSON
wp fer_import_gear /path/to/gear.json
wp fer_import_rentals /path/to/rentals.json
wp fer_import_clients /path/to/clients.jsonThe plugin includes unit tests to verify calculation accuracy:
# Install dev dependencies
composer install
# Run all tests
composer test
# Or run specific test file
vendor/bin/phpunit tests/StatisticsTest.phpSee tests/README.md for detailed testing documentation.
The plugin uses Psalm for static analysis to ensure code quality:
# Run Psalm analysis
composer psalm
# Run with statistics
composer psalm:stats
# Or run directly
vendor/bin/psalmStatic analysis results are automatically tracked by Shepherd on every push and pull request via GitHub Actions.
Equipment descriptions support two formats:
# Space-separated
Focal Length 16mm Maximum Aperture T2.8
# Colon-separated
Focal Length: 16mm
Maximum Aperture: T2.8
Created by Jens Sage (www.jenssage.com) to help filmmakers make better gear investment decisions.
