RevenuePilot CRMDocumentation
v1.0.0 Changelog
Generated from docs/codecanyon-package-release.md.

CodeCanyon Package Release Guide

RevenuePilot CRM ships marketplace release artifacts from packages/. Build the package from a clean working tree when possible, after migrations, demo seeding, browser QA, and command health checks have passed.

Release Folder

The package builder creates this structure:

packages/
  revenuepilot-crm-codecanyon-v1.0.0/
    revenuepilot-crm-v1.0.0-complete.zip
    revenuepilot-crm-v1.0.0-source.zip
    revenuepilot-crm-v1.0.0-demo.zip
    README-FIRST.txt
    release-manifest.json
    checksums-sha256.txt
    documentation/
    screenshots/
    demo-online/

Buyer ZIPs

  • complete.zip is for shared hosting and cPanel buyers. It includes a fresh production vendor/ tree from composer install --no-dev --optimize-autoloader, compiled assets, application source, installer, docs, and a clean Laravel storage skeleton.
  • source.zip is for developers. It excludes vendor/ and compiled assets, so the buyer must run Composer and NPM.
  • demo.zip contains the online demo checklist, environment template, demo credentials, screenshots, and the demo seed flow. It does not include a raw database dump.

Exclusions

Every package must exclude .git, .env, real credentials, node_modules, generated logs, cache, sessions, local storage uploads, test browser captures, private keys, database dumps, dev Composer packages, and oversized documentation videos.

The HTML docs include documentation/pages/asset-licenses.html for exact Creative Tim Material Dashboard v1.0.7 attribution, icons, fonts, images, and bundled vendor asset attribution.

Fill these in the Envato upload form and marketplace copy after the user-hosted demo/docs are live:

FieldValue before upload
Public documentation URLSet during final upload
Live preview URLSet during final upload

Final submission fails if either hosted link is missing. Do not hardcode fake public documentation or live preview URLs into the package.

Use the package builder URL inputs for the final package only. If the documentation is hosted under the same domain, the default convention is the clean live preview base URL plus /documentation/.

Marketplace Claims

Use evidence-based wording for v1.0.0:

  • Stripe and PayPal sandbox-tested payment workflows
  • webhook signature hardening
  • Meta and Google Ads readiness and approval workflows
  • Laravel Reverb-ready realtime chat, enabled when Reverb credentials and the worker are configured
  • QuickBooks and Xero accounting sync, sandbox/configuration-ready with live sync disabled by default
  • production mailbox import settings with IMAP/OAuth fields, UID/message-id dedupe, and import logs; configure later by default
  • provider configuration prepared for buyer setup
  • Live tested, Sandbox tested, Configuration-ready, and Planned only as shown by /crm/marketplace-pack/comparison

Do not claim production payment processing, production ad-account mutation, production accounting mutation, or live mailbox import until the matching provider tests, credentials, and upload evidence are available. Use docs/revenuepilot-sales-enhancement.md as the source of truth for provider claim levels and required environment keys.

Run the reviewer text scan before the final build:

.\scripts\check-codecanyon-reviewer-readiness.ps1

Build Command

.\scripts\build-codecanyon-package.ps1 -Version 1.0.0

Run the deeper test gate when preparing the final upload:

.\scripts\build-codecanyon-package.ps1 -Version 1.0.0 -RunTests -DocumentationUrl "https://demo.company-domain.com/documentation/" -LivePreviewUrl "https://demo.company-domain.com" -FinalUpload

-FinalUpload rejects missing, fake, localhost, /public, and placeholder URLs. It also runs the final readiness scan against the generated release folder after ZIP and checksum creation.

Online Demo

Use the demo ZIP alongside the complete ZIP on a staging domain. Install the app, choose demo seed from the installer or run php artisan crm:demo-seed, then verify:

php artisan crm:sync-support-mailboxes
php artisan crm:sync-accounting-providers
php artisan crm:run-recurring-billing
php artisan crm:sync-payment-gateways
php artisan crm:retry-payment-events
php artisan crm:portal-readiness-check

For realtime chat demos, configure Reverb and run the Reverb server alongside the queue worker. If Reverb is not configured, market chat updates as polling fallback/configuration-ready only.

Demo credentials:

RoleEmailPassword
Adminadmin@ovion.techDemo@12345
Managerdemo-manager@ovion.techpassword
Staffdemo-agent@ovion.techpassword
Clientapex-client@revenuepilot.testpassword

Before screenshot capture, open /crm/demo-studio and run the Full Product Tour, Portal Client Tour, and Revenue & Billing Tour. The tour panel is draggable/minimizable and stores progress locally; use Clear Tour Progress to reset tour state only.

Final Screenshot QA

After the staging demo is complete, recapture the marketplace screenshots into the root screenshots/ folder. This folder is the source of truth for documentation and CodeCanyon packages; scripts/build-codecanyon-package.ps1 copies it to packages/.../screenshots/ and regenerates the package manifest with the hosted live preview URL.

Required screenshot set: 20 desktop pages in both dark/night and light/day themes for 40 PNGs total: staff login, CRM dashboard, today workspace, leads, deal board, companies, projects, task board, invoices, payment gateways, support inbox, support tickets, delivery notes, system health, setup checklist, marketplace comparison, production runners, white-label preview, portal dashboard, and portal tickets.

php artisan crm:demo-seed
node scripts/capture-marketplace-screenshots.mjs

Before upload, confirm dark and light themes, desktop viewport readability, KPI cards, broken images, sidebar overlays, placeholder captions, stale tour state, and RevenuePilot CRM branding. The builder writes screenshots/screenshot-manifest.json; final upload mode fails when the manifest or required screenshot set is missing.

Envato Review Notes

The package follows the current Envato guidance to keep item files organized, include English HTML documentation, provide source code, and avoid placing all scripts/images/docs in the root. Verify the latest Envato rules immediately before upload:

  • https://help.author.envato.com/hc/en-us/articles/360000471583-Code-Item-Preparation-Technical-Requirements
  • https://help.author.envato.com/hc/en-us/articles/360000424863-Item-Presentation-Requirements
  • https://help.author.envato.com/hc/en-us/articles/360000471066-Item-Information-and-Metadata-Requirements