{"id":7174,"date":"2026-01-14T17:58:08","date_gmt":"2026-01-14T16:58:08","guid":{"rendered":"https:\/\/innovacore.group\/?post_type=portfolio&#038;p=7174"},"modified":"2026-03-16T11:18:29","modified_gmt":"2026-03-16T10:18:29","slug":"epic-formation-fachwissen-in-wiederkehrende-einnahmen-verwandeln","status":"publish","type":"portfolio","link":"https:\/\/innovacore.group\/de\/portfolio\/epic-formation-fachwissen-in-wiederkehrende-einnahmen-verwandeln\/","title":{"rendered":"Epic Formation &#8211; Fachwissen in wiederkehrende Einnahmen verwandeln"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Epic Formation ist ein zertifiziertes Schulungszentrum, das darauf ausgerichtet ist, professionelles Know-how in wiederkehrende Einnahmequellen zu verwandeln. Als Wachstumstreiber f\u00fcr die Innovacore Group nutzen sie hochrangige F\u00e4higkeiten \u00fcber Teams hinweg, w\u00e4hrend sie externen Unternehmern erm\u00f6glichen, ihr Wissen in zertifizierte Kurse zu b\u00fcndeln. Durch die Strukturierung von Expertise in zertifizierte Kurse erm\u00f6glicht Epic es Unternehmen, ihre Wachstumsstrategien zu sichern und Einzelpersonen dabei, nachhaltige \u00d6kosysteme auf Wissensvermittlung aufzubauen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Monetarisieren Sie Ihre F\u00e4higkeiten und beschleunigen Sie das Wachstum mit zertifizierten Ausbildungsprogrammen.<\/p>\n","protected":false},"featured_media":2369,"parent":0,"template":"","meta":{"inline_featured_image":false,"company_name":"Epic Formation","summary":"Expertise in <span class=\"ic-nycd\">wiederkehrende Einnahmen<\/span>","mission":"<p>Um statisches Wissen in dynamische Verm\u00f6genswerte zu verwandeln. Die Mission von Epic besteht darin, Exzellenz innerhalb von Innovacore zu standardisieren und Unternehmern den Bauplan zu geben, um ihre spezifische Expertise in skalierbares, wiederkehrendes Einkommen durch professionelle Bildung zu verwandeln.<\/p>\n","impact":"<p>Epic Formation professionalisiert die Wissens\u00f6konomie. Durch die Schaffung eines strengen Rahmens f\u00fcr Wissensaustausch helfen sie Unternehmen, Rekrutierungskosten durch interne Weiterqualifizierung zu senken, w\u00e4hrend gleichzeitig eine neue Welle von Unternehmern profitable, bildungsbasierte Unternehmen gr\u00fcnden kann.<\/p>\n","company_logo":"https:\/\/innovacore.group\/wp-content\/uploads\/epic-logo-core-innovacore-optimized.jpg","website_url":"","linkedin_url":"","location":"Lyon, Frankreich","founded_year":"2016","key_numbers":{"item-0":{"metric_label":"+ Schulungsmodule","metric_value":"150"},"item-1":{"metric_label":"+ Lernende","metric_value":"700"},"item-2":{"metric_label":"% Zertifiziertes Zentrum","metric_value":"100"}},"hiring_status":"einstellen","sector":"anderes","company_type":"Unternehmen","audience":["B2B","Unternehmen"],"geo_scope":["national"],"business_model":["Dienstleistungen"],"funding_stage":"Pre-Seed","partnership_type":"Gr\u00fcndung","logo_animation":"<div id=\"epic-particle-root\">\r\n    <canvas id=\"epicCanvas\"><\/canvas>\r\n<\/div>\r\n\r\n<style>\r\n    #epic-particle-root {\r\n        width: 100%;\r\n        height: 300px; \/* Hauteur fixe respect\u00e9e *\/\r\n        display: flex;\r\n        justify-content: center;\r\n        align-items: center;\r\n        background: transparent;\r\n        overflow: hidden;\r\n        cursor: crosshair;\r\n    }\r\n<\/style>\r\n\r\n<script>\r\n(function() {\r\n    const canvas = document.getElementById('epicCanvas');\r\n    const ctx = canvas.getContext('2d', { willReadFrequently: true });\r\n    const root = document.getElementById('epic-particle-root');\r\n    \r\n    let width, height;\r\n    let particles = [];\r\n    let mouse = { x: -1000, y: -1000 };\r\n    const particleColor = '#f5f5f5'; \/\/ Toujours ta couleur\r\n    let time = 0;\r\n\r\n    function init() {\r\n        width = root.offsetWidth;\r\n        height = 300;\r\n        \r\n        const dpr = window.devicePixelRatio || 1;\r\n        canvas.width = width * dpr;\r\n        canvas.height = height * dpr;\r\n        canvas.style.width = width + 'px';\r\n        canvas.style.height = height + 'px';\r\n        ctx.scale(dpr, dpr);\r\n\r\n        createLogoParticles();\r\n    }\r\n\r\n    function createLogoParticles() {\r\n        particles = [];\r\n        \r\n        \/\/ --- 1. DESSIN DU \"GABARIT\" (Invisible \u00e0 la fin) ---\r\n        ctx.textAlign = 'center';\r\n        ctx.textBaseline = 'middle';\r\n        ctx.fillStyle = 'white'; \r\n        \r\n        const cx = width \/ 2;\r\n        const cy = height \/ 2;\r\n\r\n        \/\/ A. L'ICOTYPE (Le symbole Infini)\r\n        \/\/ On le dessine en grand au-dessus\r\n        const iconSize = width < 600 ? 80 : 120;\r\n        ctx.font = `bold ${iconSize}px Arial, sans-serif`;\r\n        \/\/ J'utilise le caract\u00e8re Unicode infini pour simuler le logo\r\n        ctx.fillText('\u221e', cx, cy - 30); \r\n\r\n        \/\/ B. LE TEXTE \"epic formation\"\r\n        \/\/ Plus petit, en dessous\r\n        const textSize = width < 600 ? 30 : 50;\r\n        ctx.font = `bold ${textSize}px Arial, Helvetica, sans-serif`;\r\n        ctx.fillText('epic formation', cx, cy + 50);\r\n\r\n        \/\/ --- 2. SCAN DES PIXELS ---\r\n        const density = 4; \/\/ Finesse des particules\r\n        const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height).data;\r\n        const dataWidth = canvas.width; \r\n\r\n        for (let y = 0; y < canvas.height; y += density) {\r\n            for (let x = 0; x < canvas.width; x += density) {\r\n                \/\/ Si le pixel est allum\u00e9 (que ce soit l'ic\u00f4ne ou le texte)\r\n                if (imageData[(y * dataWidth + x) * 4 + 3] > 128) {\r\n                    const dpr = window.devicePixelRatio || 1;\r\n                    particles.push({\r\n                        x: x \/ dpr,\r\n                        y: y \/ dpr,\r\n                        originX: x \/ dpr,\r\n                        originY: y \/ dpr,\r\n                        vx: 0, \r\n                        vy: 0,\r\n                        size: Math.random() * 1.5 + 0.5,\r\n                        force: Math.random() \r\n                    });\r\n                }\r\n            }\r\n        }\r\n        \r\n        \/\/ Nettoyage du canvas pour ne laisser que les particules\r\n        ctx.clearRect(0, 0, width, height);\r\n    }\r\n\r\n    function draw() {\r\n        ctx.clearRect(0, 0, width, height);\r\n        time += 0.05;\r\n\r\n        ctx.fillStyle = particleColor;\r\n        \r\n        particles.forEach(p => {\r\n            \/\/ 1. Respiration (Vague)\r\n            const waveX = Math.sin(time * 0.5 + p.y * 0.05) * 2;\r\n            const waveY = Math.cos(time * 0.3 + p.x * 0.05) * 2;\r\n\r\n            \/\/ 2. Interaction Souris (Magn\u00e9tisme invers\u00e9)\r\n            const dx = mouse.x - p.x;\r\n            const dy = mouse.y - p.y;\r\n            const dist = Math.sqrt(dx*dx + dy*dy);\r\n            const radius = 80;\r\n\r\n            let repelX = 0;\r\n            let repelY = 0;\r\n\r\n            if (dist < radius) {\r\n                const force = (radius - dist) \/ radius;\r\n                const angle = Math.atan2(dy, dx);\r\n                repelX = -Math.cos(angle) * force * 20;\r\n                repelY = -Math.sin(angle) * force * 20;\r\n            }\r\n\r\n            \/\/ 3. Physique (Retour \u00e9lastique)\r\n            const targetX = p.originX + waveX;\r\n            const targetY = p.originY + waveY;\r\n\r\n            const ax = (targetX - p.x) * 0.08;\r\n            const ay = (targetY - p.y) * 0.08;\r\n\r\n            p.vx += ax;\r\n            p.vy += ay;\r\n            p.vx += repelX * 0.5;\r\n            p.vy += repelY * 0.5;\r\n            p.vx *= 0.85; \/\/ Friction\r\n            p.vy *= 0.85;\r\n\r\n            p.x += p.vx;\r\n            p.y += p.vy;\r\n\r\n            ctx.beginPath();\r\n            ctx.arc(p.x, p.y, p.size, 0, Math.PI * 2);\r\n            ctx.fill();\r\n        });\r\n\r\n        requestAnimationFrame(draw);\r\n    }\r\n\r\n    const updateMouse = (e) => {\r\n        const r = canvas.getBoundingClientRect();\r\n        const cx = e.touches ? e.touches[0].clientX : e.clientX;\r\n        const cy = e.touches ? e.touches[0].clientY : e.clientY;\r\n        mouse.x = cx - r.left;\r\n        mouse.y = cy - r.top;\r\n    };\r\n\r\n    window.addEventListener('resize', init);\r\n    canvas.addEventListener('mousemove', updateMouse);\r\n    canvas.addEventListener('touchmove', updateMouse, {passive: true});\r\n    canvas.addEventListener('mouseleave', () => { mouse.x = -1000; mouse.y = -1000; });\r\n    canvas.addEventListener('touchend', () => { mouse.x = -1000; mouse.y = -1000; });\r\n\r\n    setTimeout(init, 50);\r\n    draw();\r\n})();\r\n<\/script>"},"pt":[],"pipeline":[],"class_list":["post-7174","portfolio","type-portfolio","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/portfolio\/7174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/portfolio"}],"about":[{"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/types\/portfolio"}],"version-history":[{"count":2,"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/portfolio\/7174\/revisions"}],"predecessor-version":[{"id":7216,"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/portfolio\/7174\/revisions\/7216"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/media\/2369"}],"wp:attachment":[{"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/media?parent=7174"}],"wp:term":[{"taxonomy":"pt","embeddable":true,"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/pt?post=7174"},{"taxonomy":"pipeline","embeddable":true,"href":"https:\/\/innovacore.group\/de\/wp-json\/wp\/v2\/pipeline?post=7174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}