Skip to content

convert to pptx #144

@LesegoRayi

Description

@LesegoRayi
<title>FutureReadySA PowerPoint Generator</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/PptxGenJS/3.12.0/pptxgen.bundle.js"></script> <style> body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; max-width: 800px; margin: 50px auto; padding: 20px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); min-height: 100vh; } .container { background: white; padding: 40px; border-radius: 15px; box-shadow: 0 10px 40px rgba(0,0,0,0.2); } h1 { color: #E56399; text-align: center; margin-bottom: 10px; } .subtitle { text-align: center; color: #666; margin-bottom: 30px; } button { display: block; width: 100%; padding: 15px; background: linear-gradient(135deg, #E56399 0%, #D54D7C 100%); color: white; border: none; border-radius: 8px; font-size: 18px; font-weight: bold; cursor: pointer; margin-top: 20px; transition: transform 0.2s; } button:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(229, 99, 153, 0.4); } button:disabled { background: #ccc; cursor: not-allowed; } .info { background: #f8f9fa; padding: 20px; border-radius: 8px; margin: 20px 0; border-left: 4px solid #E56399; } .info h3 { margin-top: 0; color: #E56399; } .info ul { margin: 10px 0; padding-left: 20px; } .info li { margin: 5px 0; } .loading { text-align: center; color: #E56399; font-weight: bold; display: none; } .logo-note { background: #fff3cd; border: 1px solid #ffc107; padding: 15px; border-radius: 8px; margin-top: 20px; } .logo-note strong { color: #856404; } </style>

FutureReadySA Investor Presentation

Comprehensive PowerPoint Pitch Deck Generator

    <div class="info">
        <h3>📊 What's Included:</h3>
        <ul>
            <li><strong>25 Professional Slides</strong> covering all investor requirements</li>
            <li><strong>Market Analysis:</strong> R18.5B opportunity, 6.8M youth target market</li>
            <li><strong>Financial Projections:</strong> R900M funding ask, R2.1B Year 5 revenue</li>
            <li><strong>Graduate Success Framework:</strong> Soft skills, mentorship, 85% placement</li>
            <li><strong>Governance Structure:</strong> Multi-stakeholder board with industry/government</li>
            <li><strong>Regulatory Compliance:</strong> Future SA and ICEESG alignment</li>
            <li><strong>Competitive Analysis:</strong> Market positioning and advantages</li>
            <li><strong>Implementation Roadmap:</strong> Clear milestones and timelines</li>
        </ul>
    </div>

    <div class="logo-note">
        <strong>📝 Note:</strong> After downloading, add your SHE Experience logo to the title slide and slide master in PowerPoint. The presentation uses pink/rose accent colors that will complement your branding.
    </div>

    <button id="generateBtn" onclick="generatePresentation()">
        📥 Generate & Download PowerPoint
    </button>
    
    <div class="loading" id="loading">
        Creating your presentation... This may take a moment.
    </div>
</div>

<script>
    async function generatePresentation() {
        const btn = document.getElementById('generateBtn');
        const loading = document.getElementById('loading');
        
        btn.disabled = true;
        loading.style.display = 'block';
        
        try {
            let pres = new PptxGenJS();
            
            // Set presentation properties
            pres.author = 'SIIG Holdings - FutureReadySA';
            pres.company = 'SIIG Holdings';
            pres.subject = 'FutureReadySA Investor Pitch Deck';
            pres.title = 'FutureReadySA Investment Proposal';
            
            // Define color scheme (SHE Experience pink/rose tones)
            const colors = {
                primary: 'E56399',
                secondary: '2C3E50',
                accent: 'D54D7C',
                light: 'F8F9FA',
                dark: '1A1A1A'
            };

            // Slide 1: Title Slide
            let slide1 = pres.addSlide();
            slide1.background = { color: colors.primary };
            slide1.addText('FutureReadySA', {
                x: 0.5, y: 1.5, w: 9, h: 1,
                fontSize: 54, bold: true, color: 'FFFFFF', align: 'center'
            });
            slide1.addText('Building South Africa\'s Future Workforce', {
                x: 0.5, y: 2.7, w: 9, h: 0.6,
                fontSize: 28, color: 'FFFFFF', align: 'center'
            });
            slide1.addText('R900M Investment Opportunity', {
                x: 0.5, y: 3.5, w: 9, h: 0.5,
                fontSize: 22, color: 'FFFFFF', align: 'center'
            });
            slide1.addText('Powered by SIIG Holdings', {
                x: 0.5, y: 4.2, w: 9, h: 0.4,
                fontSize: 18, color: 'FFFFFF', align: 'center', italic: true
            });
            slide1.addText('[Add SHE Experience Logo Here]', {
                x: 4, y: 5, w: 2, h: 0.4,
                fontSize: 14, color: 'FFFFFF', align: 'center', italic: true
            });

            // Slide 2: The Crisis - Market Opportunity
            let slide2 = pres.addSlide();
            slide2.addText('The Unemployment Crisis: A R18.5B Market Opportunity', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide2.addText([
                { text: '• 6.8 million youth (18-35) unemployed or underemployed\n', options: { fontSize: 18, bullet: true } },
                { text: '• R45.2B total addressable market\n', options: { fontSize: 18, bullet: true } },
                { text: '• R18.5B serviceable addressable market\n', options: { fontSize: 18, bullet: true } },
                { text: '• 59.7% youth unemployment rate\n', options: { fontSize: 18, bullet: true } },
                { text: '• 2.3M jobs requiring future skills unfilled\n', options: { fontSize: 18, bullet: true } },
                { text: '• Government committed R8.4B annually to youth programs', options: { fontSize: 18, bullet: true } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.dark
            });

            // Slide 3: Our Solution
            let slide3 = pres.addSlide();
            slide3.addText('Our Solution: The Complete Ecosystem Approach', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide3.addText([
                { text: '• End-to-end platform: Training → Placement → Career Development\n', options: { fontSize: 16 } },
                { text: '• QCTO-accredited programs in AI, Data Science, Cybersecurity, AgriTech\n', options: { fontSize: 16 } },
                { text: '• AI-powered job matching with 80%+ placement success\n', options: { fontSize: 16 } },
                { text: '• Comprehensive soft skills and mentorship programs\n', options: { fontSize: 16 } },
                { text: '• Township industry creation (cybersecurity firms, contact centers)\n', options: { fontSize: 16 } },
                { text: '• Digital platform connecting all stakeholders', options: { fontSize: 16 } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.dark
            });

            // Slide 4: Graduate Success Framework
            let slide4 = pres.addSlide();
            slide4.addText('The Human Element: Graduate Success Framework', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            slide4.addText('Pre-Training Phase', {
                x: 0.5, y: 1.3, w: 4, h: 0.4,
                fontSize: 18, bold: true, color: colors.primary
            });
            slide4.addText('• Career assessments\n• Financial literacy\n• Mentor assignment', {
                x: 0.5, y: 1.8, w: 4, h: 1.2,
                fontSize: 14, color: colors.dark
            });
            
            slide4.addText('Training Phase', {
                x: 5.5, y: 1.3, w: 4, h: 0.4,
                fontSize: 18, bold: true, color: colors.primary
            });
            slide4.addText('• Technical skills\n• Soft skills (communication, leadership)\n• Workplace readiness', {
                x: 5.5, y: 1.8, w: 4, h: 1.2,
                fontSize: 14, color: colors.dark
            });

            slide4.addText('Post-Placement Support', {
                x: 0.5, y: 3.3, w: 9, h: 0.4,
                fontSize: 18, bold: true, color: colors.primary
            });
            slide4.addText('• 24-month career coaching\n• Alumni networks\n• Entrepreneurship support\n• 85% placement rate within 6 months', {
                x: 0.5, y: 3.8, w: 9, h: 1.5,
                fontSize: 14, color: colors.dark
            });

            // Slide 5: Measurable Impact
            let slide5 = pres.addSlide();
            slide5.addText('Measurable Impact: KPIs That Matter', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const kpis = [
                ['Metric', 'Target'],
                ['Employment Rate', '85% within 6 months'],
                ['Employer Satisfaction', '95%'],
                ['Salary Increase', '40% within 24 months'],
                ['Career Progression', '60% promotion within 36 months'],
                ['Program Completion', '90% retention rate'],
                ['Long-term Success', '75% employed after 3 years']
            ];
            
            slide5.addTable(kpis, {
                x: 1, y: 1.5, w: 8, h: 3.5,
                fontSize: 16,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 6: Financial Projections
            let slide6 = pres.addSlide();
            slide6.addText('Financial Model: Path to R2.1B Revenue', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const financials = [
                ['Year', 'Revenue', 'Registrations'],
                ['Year 1', 'R180M', '50,000'],
                ['Year 2', 'R497M', '200,000'],
                ['Year 3', 'R1.08B', '500,000'],
                ['Year 5', 'R2.1B', '2,000,000']
            ];
            
            slide6.addTable(financials, {
                x: 2, y: 1.5, w: 6, h: 2.5,
                fontSize: 18,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark,
                bold: true
            });
            
            slide6.addText('• Self-sustainability by Month 30\n• 18-22% IRR over 7 years\n• 4.2x revenue multiple by Year 5', {
                x: 1.5, y: 4.3, w: 7, h: 1,
                fontSize: 16, color: colors.dark
            });

            // Slide 7: Revenue Streams
            let slide7 = pres.addSlide();
            slide7.addText('Revenue Streams: Diversified Model', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const revenue = [
                ['Revenue Stream', 'Year 5 Annual'],
                ['SETA-Funded Training', 'R900M'],
                ['Corporate Placement Fees', 'R180M'],
                ['Platform Subscriptions', 'R50M'],
                ['Industry Spin-offs', 'R420M'],
                ['Government Contracts', 'R150M'],
                ['Sponsorships', 'R30M'],
                ['TOTAL', 'R1.73B']
            ];
            
            slide7.addTable(revenue, {
                x: 1.5, y: 1.5, w: 7, h: 3.5,
                fontSize: 16,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 8: Governance Structure
            let slide8 = pres.addSlide();
            slide8.addText('Governance & Ownership: Built for Accountability', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            slide8.addText('Ownership Structure', {
                x: 0.5, y: 1.3, w: 4.5, h: 0.4,
                fontSize: 18, bold: true, color: colors.primary
            });
            slide8.addText('• SIIG Holdings: 51%\n• Strategic Partners: 25%\n• Employee Ownership: 15%\n• Community Trust: 9%', {
                x: 0.5, y: 1.8, w: 4.5, h: 1.5,
                fontSize: 14, color: colors.dark
            });
            
            slide8.addText('Board Composition (9 Members)', {
                x: 5.5, y: 1.3, w: 4, h: 0.4,
                fontSize: 18, bold: true, color: colors.primary
            });
            slide8.addText('• 3 Executive Directors\n• 2 Industry Representatives\n• 1 Government Representative\n• 1 Community Representative\n• 2 Specialist Directors', {
                x: 5.5, y: 1.8, w: 4, h: 1.8,
                fontSize: 14, color: colors.dark
            });

            // Slide 9: Regulatory Compliance
            let slide9 = pres.addSlide();
            slide9.addText('Regulatory Compliance: Ahead of the Curve', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide9.addText([
                { text: '• Skills Development Act full compliance\n', options: { fontSize: 16 } },
                { text: '• QCTO accreditation for quality assurance\n', options: { fontSize: 16 } },
                { text: '• POPIA compliance for data protection\n', options: { fontSize: 16 } },
                { text: '• Future SA legislative framework proactive alignment\n', options: { fontSize: 16 } },
                { text: '• ICEESG objectives integration:\n', options: { fontSize: 16, bold: true } },
                { text: '  - Integration, Coordination, Efficiency\n', options: { fontSize: 14, italic: true } },
                { text: '  - Effectiveness, Sustainability, Governance\n', options: { fontSize: 14, italic: true } },
                { text: '• Legal monitoring committee tracking regulations', options: { fontSize: 16 } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.dark
            });

            // Slide 10: Leadership Team
            let slide10 = pres.addSlide();
            slide10.addText('Leadership Team: Experience That Delivers', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const team = [
                ['Name', 'Role', 'Experience'],
                ['Sipho Mabuya', 'GCEO', '15+ years business dev'],
                ['Thabiso Meso', 'CTO', '12+ years technology'],
                ['Phoebe Nimmerhoudt', 'COO', '10+ years operations'],
                ['Advocate Lesego Oganne', 'CLO', 'Legal & international'],
                ['Nozuko Hlefane', 'Head of Coaching', 'Mentorship leadership'],
                ['Lindiwe Mataboge', 'Head AgriSETA', 'Township economy']
            ];
            
            slide10.addTable(team, {
                x: 0.8, y: 1.5, w: 8.5, h: 3.5,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 11: Funding Requirements
            let slide11 = pres.addSlide();
            slide11.addText('Funding Requirements: R900M Over 36 Months', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            
            const funding = [
                ['Tranche', 'Amount', 'Timeline', 'Purpose'],
                ['Tranche 1', 'R300M', 'Months 1-12', 'Platform dev, initial programs'],
                ['Tranche 2', 'R350M', 'Months 13-24', 'National expansion, tech scale'],
                ['Tranche 3', 'R250M', 'Months 25-36', 'International prep, spin-offs']
            ];
            
            slide11.addTable(funding, {
                x: 0.8, y: 1.5, w: 8.5, h: 2,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });
            
            slide11.addText('Tranches tied to performance milestones\nQuarterly board reporting and governance oversight', {
                x: 1, y: 4, w: 8, h: 1,
                fontSize: 16, color: colors.dark, italic: true, align: 'center'
            });

            // Slide 12: Funding Mix
            let slide12 = pres.addSlide();
            slide12.addText('Funding Mix: Blended Capital Approach', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const fundingMix = [
                ['Investor Type', 'Percentage', 'Amount'],
                ['Development Finance (IDC, DBSA, NEF)', '40%', 'R360M'],
                ['Corporate Partners (CSI/ESG)', '35%', 'R315M'],
                ['Government Co-investment', '15%', 'R135M'],
                ['Impact Investors', '10%', 'R90M']
            ];
            
            slide12.addTable(fundingMix, {
                x: 1, y: 1.5, w: 8, h: 2.5,
                fontSize: 16,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });
            
            slide12.addText('Diversified cap table with no single investor exceeding 20%', {
                x: 1, y: 4.3, w: 8, h: 0.5,
                fontSize: 14, color: colors.dark, italic: true, align: 'center'
            });

            // Slide 13: Competitive Positioning
            let slide13 = pres.addSlide();
            slide13.addText('Competitive Positioning: Why We Win', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide13.addText([
                { text: '✓ Only comprehensive township economy integration platform\n', options: { fontSize: 16, bold: true } },
                { text: '✓ Government endorsement providing market access\n', options: { fontSize: 16, bold: true } },
                { text: '✓ R50M+ technology moat difficult to replicate\n', options: { fontSize: 16, bold: true } },
                { text: '✓ Soft skills focus differentiating from technical-only providers\n', options: { fontSize: 16, bold: true } },
                { text: '✓ Multi-sector approach vs. narrow focus competitors\n', options: { fontSize: 16, bold: true } },
                { text: '✓ First-mover advantage in township industry creation', options: { fontSize: 16, bold: true } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.primary
            });

            // Slide 14: Implementation Roadmap
            let slide14 = pres.addSlide();
            slide14.addText('Implementation Roadmap: Clear Milestones', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            slide14.addText('Phase 1: Foundation (Months 1-12)', {
                x: 0.5, y: 1.3, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide14.addText('Governance, platform enhancement, 10 corporate partnerships, 50K graduates', {
                x: 0.5, y: 1.7, w: 9, h: 0.5,
                fontSize: 14, color: colors.dark
            });
            
            slide14.addText('Phase 2: Scale (Months 13-36)', {
                x: 0.5, y: 2.5, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide14.addText('National rollout, SETA integration, government partnerships, 500K graduates', {
                x: 0.5, y: 2.9, w: 9, h: 0.5,
                fontSize: 14, color: colors.dark
            });
            
            slide14.addText('Phase 3: Optimize (Months 37-60)', {
                x: 0.5, y: 3.7, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide14.addText('International launch, industry spin-offs operational, 2M graduates', {
                x: 0.5, y: 4.1, w: 9, h: 0.5,
                fontSize: 14, color: colors.dark
            });

            // Slide 15: Social Impact
            let slide15 = pres.addSlide();
            slide15.addText('Social Impact: Beyond Financial Returns', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const impact = [
                ['Impact Metric', 'Target by Year 5'],
                ['Youth Trained & Employed', '400,000'],
                ['Economic Activity Generated', 'R2.1B annually'],
                ['Township Jobs Created', '25,000 annually'],
                ['Household Income Improvement', '85% increase'],
                ['Food Security Reach', '50,000 residents'],
                ['Female Empowerment Focus', 'SHE Experience partnership']
            ];
            
            slide15.addTable(impact, {
                x: 1, y: 1.5, w: 8, h: 3.5,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 16: Strategic Partnerships
            let slide16 = pres.addSlide();
            slide16.addText('Strategic Partnerships & Market Access', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide16.addText('Government\n• Mogale City LED endorsement\n• Township Economy Development Act alignment\n\nSETAs\n• AgriSETA, Services SETA, Manufacturing SETA\n\nCorporates\n• 10 major corporations (banking, mining, tech)\n\nCivil Society\n• 15+ NGO partnerships', {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                fontSize: 16, color: colors.dark
            });

            // Slide 17: Technology Platform
            let slide17 = pres.addSlide();
            slide17.addText('Technology Advantage: AI-Powered Matching', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide17.addText([
                { text: '• Custom LMS platform with KPI Technologies\n', options: { fontSize: 16 } },
                { text: '• AI-powered skills-to-jobs matching (80%+ accuracy)\n', options: { fontSize: 16 } },
                { text: '• Real-time employer dashboard and tracking\n', options: { fontSize: 16 } },
                { text: '• Mobile-first design (85% market reach)\n', options: { fontSize: 16 } },
                { text: '• Blockchain-verified certifications\n', options: { fontSize: 16 } },
                { text: '• Scalable to 10M users\n', options: { fontSize: 16 } },
                { text: '• R150M technology investment creates competitive moat', options: { fontSize: 16, bold: true } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.dark
            });

            // Slide 18: Market Segmentation
            let slide18 = pres.addSlide();
            slide18.addText('Target Market Segmentation', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const markets = [
                ['Market Segment', 'Size', 'Value Proposition'],
                ['Youth (18-35)', '6.8M', 'Free training + job placement'],
                ['Corporates & SOEs', '850 large', 'Ready workforce + ESG impact'],
                ['Government Entities', '686 municipalities', 'Policy alignment + capacity']
            ];
            
            slide18.addTable(markets, {
                x: 0.8, y: 1.5, w: 8.5, h: 2,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });
            
            slide18.addText('Total Addressable Market: R45.2B\nServiceable Addressable Market: R18.5B', {
                x: 1, y: 4, w: 8, h: 0.8,
                fontSize: 18, color: colors.primary, bold: true, align: 'center'
            });

            // Slide 19: Risk Mitigation
            let slide19 = pres.addSlide();
            slide19.addText('Risk Factors & Mitigation Strategies', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            const risks = [
                ['Risk', 'Mitigation Strategy'],
                ['Regulatory changes', 'Proactive compliance, legal monitoring'],
                ['Economic downturn', 'Diversified revenue, government focus'],
                ['Technology scaling', 'Proven architecture, phased investment'],
                ['Competition entry', 'First-mover advantages, partnerships'],
                ['Revenue shortfalls', 'Conservative projections, break-even analysis']
            ];
            
            slide19.addTable(risks, {
                x: 1, y: 1.5, w: 8, h: 3,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 20: Why Invest Now
            let slide20 = pres.addSlide();
            slide20.addText('Why Invest Now: Timing Is Critical', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            slide20.addText([
                { text: '⏰ Youth unemployment crisis worsening (59.7%)\n', options: { fontSize: 18, bold: true } },
                { text: '📋 Government policy window open with Township Economy Act\n', options: { fontSize: 18, bold: true } },
                { text: '💼 Corporate ESG investment growing 12% annually\n', options: { fontSize: 18, bold: true } },
                { text: '🏆 First-mover advantage in township industry creation\n', options: { fontSize: 18, bold: true } },
                { text: '💻 Technology moat takes 18-24 months to replicate\n', options: { fontSize: 18, bold: true } },
                { text: '✅ Pilot success proven - execution risk minimized', options: { fontSize: 18, bold: true } }
            ], {
                x: 0.8, y: 1.5, w: 8.5, h: 4,
                color: colors.primary
            });

            // Slide 21: Investment Highlights
            let slide21 = pres.addSlide();
            slide21.addText('Investment Highlights: Why FutureReadySA', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 32, bold: true, color: colors.secondary
            });
            
            slide21.addShape(pres.ShapeType.rect, {
                x: 0.5, y: 1.5, w: 4, h: 1.2,
                fill: { color: colors.primary }
            });
            slide21.addText('Massive Market\n6.8M youth\nR18.5B addressable', {
                x: 0.5, y: 1.6, w: 4, h: 1,
                fontSize: 16, bold: true, color: 'FFFFFF', align: 'center', valign: 'middle'
            });
            
            slide21.addShape(pres.ShapeType.rect, {
                x: 5, y: 1.5, w: 4.5, h: 1.2,
                fill: { color: colors.primary }
            });
            slide21.addText('Unique Solution\nTownship ecosystem\nGovernment endorsed', {
                x: 5, y: 1.6, w: 4.5, h: 1,
                fontSize: 16, bold: true, color: 'FFFFFF', align: 'center', valign: 'middle'
            });
            
            slide21.addShape(pres.ShapeType.rect, {
                x: 0.5, y: 3, w: 4, h: 1.2,
                fill: { color: colors.accent }
            });
            slide21.addText('Attractive Returns\n18-22% IRR\n4.2x revenue multiple', {
                x: 0.5, y: 3.1, w: 4, h: 1,
                fontSize: 16, bold: true, color: 'FFFFFF', align: 'center', valign: 'middle'
            });
            
            slide21.addShape(pres.ShapeType.rect, {
                x: 5, y: 3, w: 4.5, h: 1.2,
                fill: { color: colors.accent }
            });
            slide21.addText('Transformational Impact\n400K lives transformed\nR2.1B economic activity', {
                x: 5, y: 3.1, w: 4.5, h: 1,
                fontSize: 16, bold: true, color: 'FFFFFF', align: 'center', valign: 'middle'
            });

            // Slide 22: Call to Action
            let slide22 = pres.addSlide();
            slide22.background = { color: colors.primary };
            slide22.addText('Partner With Us', {
                x: 0.5, y: 1.5, w: 9, h: 1,
                fontSize: 48, bold: true, color: 'FFFFFF', align: 'center'
            });
            slide22.addText('Investment committee presentations available\nDue diligence timeline: 45-60 days\nInitial tranche closes Q2 2025', {
                x: 0.5, y: 2.8, w: 9, h: 1.2,
                fontSize: 20, color: 'FFFFFF', align: 'center'
            });
            slide22.addText('Contact:\nSipho Mabuya\nsipho@siigholdings.co.za\nwww.futurereadysa.co.za', {
                x: 0.5, y: 4.3, w: 9, h: 1,
                fontSize: 18, color: 'FFFFFF', align: 'center', bold: true
            });

            // Slide 23: Appendix - Financial Detail
            let slide23 = pres.addSlide();
            slide23.addText('APPENDIX: Financial Model Detail', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            
            const financialDetail = [
                ['', 'Year 1', 'Year 2', 'Year 3', 'Year 5'],
                ['Revenue', 'R180M', 'R497M', 'R1.08B', 'R2.1B'],
                ['Costs', 'R171M', 'R437M', 'R972M', 'R1.79B'],
                ['Margin', '5%', '12%', '10%', '15%'],
                ['Profit', 'R9M', 'R60M', 'R108M', 'R315M']
            ];
            
            slide23.addTable(financialDetail, {
                x: 1, y: 1.5, w: 8, h: 2.5,
                fontSize: 14,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });
            
            slide23.addText('Conservative projections with 15% contingency buffer\nFull financial model available for due diligence', {
                x: 1, y: 4.3, w: 8, h: 0.6,
                fontSize: 14, color: colors.dark, italic: true, align: 'center'
            });

            // Slide 24: Appendix - Competitive Analysis
            let slide24 = pres.addSlide();
            slide24.addText('APPENDIX: Competitive Analysis', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            
            const competitors = [
                ['Competitor', 'Strength', 'Our Advantage'],
                ['WeThinkCode', 'Coding focus', 'Broader skills + township integration'],
                ['UCT Online', 'Brand recognition', 'Job placement + affordability'],
                ['Microsoft Programs', 'Global platform', 'Local context + comprehensive support'],
                ['Universities', 'Credibility', 'Faster path + practical skills'],
                ['SETA Providers', 'Government funding', 'Integrated platform + better outcomes']
            ];
            
            slide24.addTable(competitors, {
                x: 0.5, y: 1.5, w: 9, h: 3,
                fontSize: 12,
                border: { pt: 1, color: colors.secondary },
                fill: { color: colors.light },
                color: colors.dark
            });

            // Slide 25: Appendix - Three Pillars Detail
            let slide25 = pres.addSlide();
            slide25.addText('APPENDIX: Three Pillars Deep Dive', {
                x: 0.5, y: 0.5, w: 9, h: 0.6,
                fontSize: 28, bold: true, color: colors.secondary
            });
            
            slide25.addText('Pillar 1: Skills Development', {
                x: 0.5, y: 1.3, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide25.addText('• Accredited training via SETA partnerships\n• Soft skills: communication, leadership, problem-solving\n• Industry-relevant curriculum co-developed with corporates', {
                x: 0.5, y: 1.7, w: 9, h: 0.9,
                fontSize: 12, color: colors.dark
            });
            
            slide25.addText('Pillar 2: Employment Pathways', {
                x: 0.5, y: 2.8, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide25.addText('• Corporate partnerships for direct hiring\n• Government sector placement programs\n• Entrepreneurship support for business creation', {
                x: 0.5, y: 3.2, w: 9, h: 0.9,
                fontSize: 12, color: colors.dark
            });
            
            slide25.addText('Pillar 3: Township Economy', {
                x: 0.5, y: 4.3, w: 9, h: 0.4,
                fontSize: 16, bold: true, color: colors.primary
            });
            slide25.addText('• Local industry creation (cybersecurity firms, contact centers)\n• Mogale City farms integration feeding townships\n• Community wealth building and economic empowerment', {
                x: 0.5, y: 4.7, w: 9, h: 0.9,
                fontSize: 12, color: colors.dark
            });

            // Save presentation
            pres.writeFile({ fileName: 'FutureReadySA_Investor_Presentation.pptx' });
            
            loading.style.display = 'none';
            btn.disabled = false;
            btn.textContent = '✅ Download Complete! Click to Generate Again';
            
        } catch (error) {
            console.error('Error generating presentation:', error);
            alert('Error generating presentation. Please try again.');
            loading.style.display = 'none';
            btn.disabled = false;
        }
    }
</script>
``

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions