{ "repo_notes": [ { "content": "" } ], "pages": [ { "title": "Mautic Overview", "purpose": "Introduce Mautic as an open-source marketing automation platform, covering its core purpose, installation options, community, and high-level architecture. Links to child pages for setup and bundle system details.", "page_notes": [ { "content": "" } ] }, { "title": "Application Architecture and Bootstrap", "purpose": "Explain the Symfony-based application structure, AppKernel initialization, bundle registration, request handling flow, and environment management.", "parent": "Mautic Overview", "page_notes": [ { "content": "" } ] }, { "title": "Installation and Configuration", "purpose": "Document installation methods (Composer, DDEV, zip), ParameterLoader configuration system, environment-specific settings, deployment considerations, and the web installer flow.", "parent": "Mautic Overview", "page_notes": [ { "content": "" } ] }, { "title": "Bundle System and Plugin Architecture", "purpose": "Explain how Mautic's bundle system works, plugin discovery mechanism, bundle lifecycle, and integration with the Symfony framework. Covers the Marketplace for installing plugins.", "parent": "Mautic Overview", "page_notes": [ { "content": "" } ] }, { "title": "Contact Management System", "purpose": "Document the LeadBundle, which manages contacts, companies, segments, and relationships - the core data model and highest-importance system in Mautic. Links to child pages for each subsystem.", "page_notes": [ { "content": "" } ] }, { "title": "Contact (Lead) Model and Repository", "purpose": "Explain the Lead entity structure, LeadModel business logic, LeadRepository data access patterns, contact lifecycle management, and timeline tracking.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Custom Fields and Data Management", "purpose": "Document the extensible field system, field types, unique identifiers, field groups, and how custom contact data is stored and queried dynamically. Covers CustomFieldColumn, FieldModel, and background field creation.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Segments (Lists) and Dynamic Filtering", "purpose": "Explain the segment system, ContactSegmentService, filter types, filter operators, segment rebuilding process, and how segments integrate with campaigns. Covers the QueryBuilder and filter decorator pattern.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Companies and Contact Relationships", "purpose": "Document company entities, CompanyModel, company-contact associations, primary company logic, and company data management workflows.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Import, Export, and Bulk Operations", "purpose": "Explain the CSV import system, field mapping, background processing, export functionality, batch operations, scheduled export, and data migration workflows.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Deduplication and Contact Merging", "purpose": "Document the ContactDeduper, ContactMerger, FieldsWithUniqueIdentifier, unique identifier matching strategies, merge record tracking, and data integrity maintenance.", "parent": "Contact Management System", "page_notes": [ { "content": "" } ] }, { "title": "Email Marketing System", "purpose": "Document email creation, management, sending, and tracking - covering EmailModel for content management and MailHelper for message dispatch. Links to child pages for each subsystem.", "page_notes": [ { "content": "" } ] }, { "title": "Email Creation and Management", "purpose": "Explain EmailModel, email entity structure, email types (segment vs template), EmailController, configuration options, and email lifecycle management.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "Email Builder and Content Design", "purpose": "Document the GrapesJS-based visual email builder, theme system, template management, and content editing capabilities for marketing emails.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "Email Sending Architecture", "purpose": "Explain MailHelper message construction, SendEmailToContact orchestration, transport layer integration, token replacement system, and tracking pixel injection.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "Email Tracking and Statistics", "purpose": "Document email stat creation, StatHelper, open/click tracking, device tracking, DNC management, and email analytics data collection.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "A/B Testing and Email Variants", "purpose": "Explain email A/B testing implementation, VariantModelTrait, variant creation, winner criteria determination, and test result analysis.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "Monitored Email and Bounce Handling", "purpose": "Document the monitored email system, IMAP mailbox processing, bounce handling, unsubscribe processing, and feedback loop integration.", "parent": "Email Marketing System", "page_notes": [ { "content": "" } ] }, { "title": "Forms and Landing Pages", "purpose": "Document form creation, submission handling, page management, and how forms/pages integrate with contact management and campaign workflows. Links to child pages for each subsystem.", "page_notes": [ { "content": "" } ] }, { "title": "Form Builder and Field Configuration", "purpose": "Explain FormModel, form entity structure, field types, validation rules, conditional fields, progressive profiling, and the form builder interface.", "parent": "Forms and Landing Pages", "page_notes": [ { "content": "" } ] }, { "title": "Form Submission Processing", "purpose": "Document SubmissionModel, submission handling flow, lead creation/update from forms, form actions, validation pipeline, and post-submission workflows.", "parent": "Forms and Landing Pages", "page_notes": [ { "content": "" } ] }, { "title": "Landing Pages and Tracking", "purpose": "Explain PageModel, page creation, page types, hit tracking, preference centers, A/B testing for pages, and page-level analytics.", "parent": "Forms and Landing Pages", "page_notes": [ { "content": "" } ] }, { "title": "MauticSDK and Client-Side Forms", "purpose": "Document mautic-form-src.js SDK, form embedding on external sites, cross-origin iframe communication, client-side validation, and messenger patterns.", "parent": "Forms and Landing Pages", "page_notes": [ { "content": "" } ] }, { "title": "Campaign System", "purpose": "Document campaign creation, event management, workflow automation, contact journey tracking, and the campaign execution engine. Links to child pages for each subsystem.", "page_notes": [ { "content": "" } ] }, { "title": "Campaign Structure and Visual Builder", "purpose": "Explain CampaignModel, campaign entity structure, canvas settings management, jsPlumb integration, and the visual campaign builder interface.", "parent": "Campaign System", "page_notes": [ { "content": "" } ] }, { "title": "Campaign Events and Event Types", "purpose": "Document event types (action, decision, condition), EventModel, event configuration, event relationships, and event deletion with redirection.", "parent": "Campaign System", "page_notes": [ { "content": "" } ] }, { "title": "Campaign Membership Management", "purpose": "Explain how contacts enter/exit campaigns, MembershipBuilder, segment-based membership, manual additions, rotation system, and allowRestart logic.", "parent": "Campaign System", "page_notes": [ { "content": "" } ] }, { "title": "Event Execution and Scheduling", "purpose": "Document the event execution engine, LeadEventLog tracking, trigger modes, scheduled event processing, and the event dispatching architecture.", "parent": "Campaign System", "page_notes": [ { "content": "" } ] }, { "title": "Integration Framework", "purpose": "Document both the legacy CRM plugin integration framework and the modern IntegrationsBundle sync framework for connecting Mautic with external systems. Links to child pages for each integration approach.", "page_notes": [ { "content": "" } ] }, { "title": "Integration Framework and Base Classes", "purpose": "Explain AbstractIntegration, CrmAbstractIntegration, authentication handling (OAuth2, API keys), API communication patterns, and the plugin architecture for both legacy and modern integration approaches.", "parent": "Integration Framework", "page_notes": [ { "content": "" } ] } ] }