| _wordpressResponse |
Symfony\Component\HttpFoundation\Response {#179
+headers: Symfony\Component\HttpFoundation\ResponseHeaderBag {#3628 …}
#content: """
<!DOCTYPE html>\n
<html lang="de">\n
<head>\n
<!-- header-startplatz-v40.php starts -->\n
<meta charset="utf-8">\n
<meta name="viewport" content="width=device-width, initial-scale=1">\n
\n
<link rel="profile" href="http://gmpg.org/xfn/11">\n
<link rel="pingback" href="https://www.startplatz.de/xmlrpc.php">\n
<!-- Apple Touch Icon (180x180 auto-scales) -->\n
<link rel="apple-touch-icon" href="/apple-touch-icon.png">\n
<!-- Favicon -->\n
\n
<link rel="icon" href="/favicon.png" sizes="32x32">\n
\n
<script src="https://kit.fontawesome.com/30335e3531.js" crossorigin="anonymous"></script>\n
\n
<!-- Google tag (gtag.js) -->\n
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XYVL4EFW9X"></script>\n
<script>\n
window.dataLayer = window.dataLayer || [];\n
function gtag(){dataLayer.push(arguments);}\n
gtag('js', new Date());\n
\n
gtag('config', 'G-XYVL4EFW9X');\n
</script>\n
<!-- End Google tag -->\n
\n
<!-- Google Tag Manager -->\n
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n
})(window,document,'script','dataLayer','GTM-5WTVWDT');</script>\n
<!-- End Google Tag Manager -->\n
\n
<!-- Facebook Pixel Code -->\n
<script>\n
!function(f,b,e,v,n,t,s)\n
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n
n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n
n.queue=[];t=b.createElement(e);t.async=!0;\n
t.src=v;s=b.getElementsByTagName(e)[0];\n
s.parentNode.insertBefore(t,s)}(window,document,'script',\n
'https://connect.facebook.net/en_US/fbevents.js');\n
fbq('init', '767917863396798');\n
fbq('track', 'PageView');\n
</script>\n
<noscript>\n
<img height="1" width="1"\n
src="https://www.facebook.com/tr?id=767917863396798&ev=PageView&noscript=1"/>\n
</noscript>\n
<!-- End Facebook Pixel Code -->\n
\n
<!-- wp_head starts -->\n
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />\n
\n
\t<!-- This site is optimized with the Yoast SEO Premium plugin v27.6 (Yoast SEO v27.6) - https://yoast.com/product/yoast-seo-premium-wordpress/ -->\n
\t<title>Anton Osika & Lovable: KI ersetzt Code durch Text - STARTPLATZ</title>\n
\t<meta name="description" content="Wie Anton Osika mit Lovable ein KI-Startup aufbaut, das Programmieren überflüssig macht – und Millionen Menschen zu digitalen „Buildern“ macht." />\n
\t<link rel="canonical" href="https://www.staging.startplatz.de/startup-wiki/lovable-gruender-anton-osika/" />\n
\t<meta property="og:locale" content="de_DE" />\n
\t<meta property="og:type" content="article" />\n
\t<meta property="og:title" content="Anton Osika & Lovable: KI ersetzt Code durch Text" />\n
\t<meta property="og:description" content="Wie Anton Osika mit Lovable ein KI-Startup aufbaut, das Programmieren überflüssig macht – und Millionen Menschen zu digitalen „Buildern“ macht." />\n
\t<meta property="og:url" content="https://www.staging.startplatz.de/startup-wiki/lovable-gruender-anton-osika/" />\n
\t<meta property="og:site_name" content="STARTPLATZ" />\n
\t<meta property="og:image" content="http://www.startplatz.de/wp-content/uploads/2012/07/SP_Home-Bild-e1437985636488.png" />\n
\t<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.staging.startplatz.de\/startup-wiki\/lovable-gruender-anton-osika\/","url":"https:\/\/www.staging.startplatz.de\/startup-wiki\/lovable-gruender-anton-osika\/","name":"Anton Osika & Lovable: KI ersetzt Code durch Text - STARTPLATZ","isPartOf":{"@id":"https:\/\/www.staging.startplatz.de\/#website"},"datePublished":"2025-07-18T08:47:59+00:00","description":"Wie Anton Osika mit Lovable ein KI-Startup aufbaut, das Programmieren überflüssig macht – und Millionen Menschen zu digitalen „Buildern“ macht.","breadcrumb":{"@id":"https:\/\/www.staging.startplatz.de\/startup-wiki\/lovable-gruender-anton-osika\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.staging.startplatz.de\/startup-wiki\/lovable-gruender-anton-osika\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.staging.startplatz.de\/startup-wiki\/lovable-gruender-anton-osika\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.staging.startplatz.de\/"},{"@type":"ListItem","position":2,"name":"Startup Wiki","item":"https:\/\/www.staging.startplatz.de\/startup-wiki\/"},{"@type":"ListItem","position":3,"name":"Anton Osika & Lovable: KI ersetzt Code durch Text"}]},{"@type":"WebSite","@id":"https:\/\/www.staging.startplatz.de\/#website","url":"https:\/\/www.staging.startplatz.de\/","name":"STARTPLATZ","description":"Startup Inkubator in Köln und Düsseldorf","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.staging.startplatz.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"}]}</script>\n
\t<!-- / Yoast SEO Premium plugin. -->\n
\n
\n
<link rel='dns-prefetch' href='//www.staging.startplatz.de' />\n
<link rel="alternate" type="application/rss+xml" title="STARTPLATZ » Feed" href="https://www.staging.startplatz.de/feed/" />\n
<link rel="alternate" type="application/rss+xml" title="STARTPLATZ » Kommentar-Feed" href="https://www.staging.startplatz.de/comments/feed/" />\n
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.staging.startplatz.de/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.staging.startplatz.de%2Fstartup-wiki%2Flovable-gruender-anton-osika%2F" />\n
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.staging.startplatz.de/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.staging.startplatz.de%2Fstartup-wiki%2Flovable-gruender-anton-osika%2F&format=xml" />\n
<style id='wp-img-auto-sizes-contain-inline-css' type='text/css'>\n
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}\n
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */\n
</style>\n
<style id='wp-emoji-styles-inline-css' type='text/css'>\n
\n
\timg.wp-smiley, img.emoji {\n
\t\tdisplay: inline !important;\n
\t\tborder: none !important;\n
\t\tbox-shadow: none !important;\n
\t\theight: 1em !important;\n
\t\twidth: 1em !important;\n
\t\tmargin: 0 0.07em !important;\n
\t\tvertical-align: -0.1em !important;\n
\t\tbackground: none !important;\n
\t\tpadding: 0 !important;\n
\t}\n
/*# sourceURL=wp-emoji-styles-inline-css */\n
</style>\n
<style id='wp-block-library-inline-css' type='text/css'>\n
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}\n
/*wp_block_styles_on_demand_placeholder:6a2a3c7a002a9*/\n
/*# sourceURL=wp-block-library-inline-css */\n
</style>\n
<style id='classic-theme-styles-inline-css' type='text/css'>\n
/*! This file is auto-generated */\n
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}\n
/*# sourceURL=/wp-includes/css/classic-themes.min.css */\n
</style>\n
<link rel='stylesheet' id='mc4wp-form-styles-builder-css' href='//www.staging.startplatz.de/wp-content/uploads/mc4wp-stylesheets/bundle.css?ver=1649164263' type='text/css' media='all' />\n
<link rel="https://api.w.org/" href="https://www.staging.startplatz.de/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.staging.startplatz.de/wp-json/wp/v2/pages/78835" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.staging.startplatz.de/xmlrpc.php?rsd" />\n
<meta name="generator" content="WordPress 6.9.4" />\n
<link rel='shortlink' href='https://www.staging.startplatz.de/?p=78835' />\n
<!-- wp_head ends -->\n
\n
\n
<!-- Bootstrap CSS -->\n
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">\n
\n
<!-- Google Fonts -->\n
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;700&display=swap" rel="stylesheet">\n
\n
<!-- additional CSS based on page settings -->\n
<!-- additional css style definitions ends -->\n
\n
<style type="text/css">\n
body {\n
padding-top: 50px;\n
font-family: 'Source Sans Pro', sans-serif;\n
}\n
</style>\n
\n
<!-- header-startplatz-v40.php ends -->\n
\n
<!-- Custom CSS per page (after Bootstrap) -->\n
</head>\n
\n
\n
<body id="top" >\n
\n
<!-- menu starts -->\n
\n
<style>\n
\n
\n
#imgNav {\n
height: 45px;\n
width: 45px;\n
\n
}\n
#imgNav img {\n
object-fit: cover;\n
}\n
\n
.navbar-collapse .navbar-nav .nav-item a:hover {\n
background-color: #aacf61ff;\n
color: #000000;\n
border-radius: 5px;\n
\n
}\n
\n
.logo {\n
font-weight: bolder;\n
font-size: 1.5rem;\n
}\n
\n
.navbar-nav .nav-item .dropdown-menu {\n
border: none;\n
background-color: #eae9e9;\n
}\n
\n
#userNamePlaceHolder {\n
background-color: rgba(170, 207, 97, 0.6);\n
}\n
.navbar-nav .nav-item .dropdown-menu a:hover {\n
border-radius: 0;\n
\n
}\n
\n
\n
.navbar-nav .nav-item .loginlink {\n
background-color:#aacf61ff;\n
}\n
.navbar-collapse .navbar-nav .nav-item .loginlink:hover {\n
background-color:#7ab800;\n
}\n
\n
@media all and (min-width: 992px) {\n
.navbar .dropdown-menu-end{ right:0; left: auto; }\n
.navbar .nav-item .dropdown-menu{ display:block; opacity: 0; visibility: hidden; transition:.1s; margin-top:0; }\n
.navbar .nav-item:hover .nav-link{ color: #000000; }\n
.navbar .dropdown-menu.fade-down {\n
top:80%; transform: rotateX(-75deg); transform-origin: 0 0;\n
}\n
.navbar .dropdown-menu.fade-up{ top:180%; }\n
.navbar .nav-item:hover .dropdown-menu{transition: 0.1s; opacity:1; visibility:visible; top:100%; transform: rotateX(0deg); }\n
}\n
@media (max-width: 768px ) {\n
.collapse {\n
height: 100vh;\n
transition: 0.5s; opacity: 1; visibility: visible; top: 100%; transform: rotateX(0deg);\n
}\n
\n
\n
}\n
\n
.highlight {\n
border-bottom: 3px solid #AACF61;\n
}\n
\n
.padding-bottom {\n
padding-bottom: 2px;\n
}\n
</style>\n
\n
<style>\n
.ai-hub-link:hover {\n
color: black; /* Textfarbe beim Hover */\n
}\n
</style>\n
\n
\n
\n
<nav class="navbar navbar-dark bg-dark navbar-expand-lg fixed-top shadow-lg padding-bottom d-flex justify-content-lg-center">\n
<a class="logo navbar-brand text-center mr-2 mr-lg-4" href="https://www.startplatz.de" rel="tooltip" title="Home for the innovative people in Rheinland" data-placement="bottom" >\n
<img src="https://res.cloudinary.com/startplatz/image/upload/c_scale,w_107/v1614775778/logos/STARTPLATZ_Logos/STARTPLATZ_Logo_wei%C3%9F.png" class="p-0 m-0">\n
</a>\n
\n
<button class="navbar-toggler " type="button" data-toggle="collapse" data-target="#navigation" aria-controls="navbarSupportedContent-3" aria-expanded="false" aria-label="Toggle navigation">\n
<span class="navbar-toggler-icon"></span>\n
</button>\n
\n
<div class="collapse navbar-collapse mt-1" id="navigation" style="font-size: 0.9rem; max-width:920px" >\n
<ul class="navbar-nav mr-3">\n
\n
<li class="nav-item active mb-2 mt-2 mr-1 ml-0 mr-2">\n
<a class="nav-link px-2" style="background-color: rgba(142,86,255,1.0); border-radius: 10px; min-width:75px; display: inline-block; text-align: center; white-space: nowrap;" href="https://startplatz-ai-academy.de/">\n
AI Academy\n
</a>\n
</li>\n
\n
<li class="nav-item dropdown active mt-2 mr-2">\n
<a href="#" class="nav-link px-2 dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
Startups\n
</a>\n
<div class="dropdown-menu dropdown-menu-left" aria-labelledby="navbarDropdownMenuLink">\n
<hr class="my-2 mx-3">\n
<a class="dropdown-item" href="/memberships">\n
Memberships\n
</a>\n
<hr class="my-2 mx-3">\n
<a class="dropdown-item" href="/accelerator/">\n
Accelerator\n
</a>\n
<a class="dropdown-item" href="https://www.rheinlandpitch.de">\n
Rheinland Pitch\n
</a>\n
<a class="dropdown-item" href="/open-accelerator">\n
Inkubator\n
</a>\n
\n
</div>\n
</li>\n
\n
\n
<li class="nav-item dropdown active mt-2 mr-2\n
">\n
<a href="#" class="nav-link px-2 dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
Unternehmen\n
</a>\n
<div class="dropdown-menu dropdown-menu-left" aria-labelledby="navbarDropdownMenuLink">\n
<a class="dropdown-item" href="/fuer-unternehmen">\n
Innovation & Partnerschaften\n
</a>\n
<a class="dropdown-item" href="/ki-weiterbildungen">\n
KI-Weiterbildung\n
</a>\n
</div>\n
</li>\n
\n
<li class="nav-item dropdown active mt-2 mr-2">\n
<a href="#" class="nav-link px-2 dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
Büros / Coworking\n
</a>\n
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink">\n
<a class="dropdown-item" href="/teambuero-koeln">\n
Büros in Köln\n
</a>\n
<a class="dropdown-item" href="/teambuero-duesseldorf">\n
Büros in Düsseldorf\n
</a>\n
<a class="dropdown-item" href="/coworking-koeln">\n
Coworking in Köln\n
</a>\n
<a class="dropdown-item" href="/coworking-duesseldorf">\n
Coworking in Düsseldorf\n
</a>\n
<a class="dropdown-item" href="/geschaeftsanschrift-koeln">\n
Geschäftsadresse Köln\n
</a>\n
<a class="dropdown-item" href="/geschaeftsanschrift-duesseldorf">\n
Geschäftsadresse Düsseldorf\n
</a>\n
</div>\n
</li>\n
\n
\n
<li class="nav-item dropdown active mt-2 mr-2">\n
<a href="#" class="nav-link px-2 dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
Konferenzräume\n
</a>\n
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink">\n
<a class="dropdown-item" href="/koeln-tagungsraeume-und-konferenzraeume">\n
Konferenzräume in Köln\n
</a>\n
<a class="dropdown-item" href="/duesseldorf-tagungsraeume-und-konferenzraeume">\n
Konferenzräume in Düsseldorf\n
</a>\n
\n
</div>\n
</li>\n
\n
\n
<li class="nav-item active mt-2 mr-2\n
">\n
<a href="/events" class="nav-link px-2">\n
Events\n
</a>\n
</li>\n
\n
\n
<li class="nav-item dropdown active mt-2 mr-2\n
">\n
<a href="#" class="nav-link px-2 dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
Über uns\n
</a>\n
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink">\n
<a class="dropdown-item" href="/ueber-uns/">\n
Über STARTPLATZ\n
</a>\n
<a class="dropdown-item" href="/standorte">\n
Standorte\n
</a>\n
<a class="dropdown-item" href="/startplatz-team">\n
STARTPLATZ Team\n
</a>\n
<a class="dropdown-item" href="/partner">\n
Partner\n
</a>\n
<a class="dropdown-item" href="/startups">\n
Unsere Startups\n
</a>\n
<a class="dropdown-item" href="/referenzen">\n
Referenzen\n
</a>\n
<a class="dropdown-item" href="/karriere">\n
Karriere\n
</a>\n
\n
</div>\n
</li>\n
\n
<li class="nav-item active mt-2 mr-2">\n
<a class="nav-link px-2" href="/blog">\n
Blog\n
</a>\n
</li>\n
\n
<li class="nav-item mt-2 mr-2">\n
<link href="https://fonts.googleapis.com/icon?family=Material+Icons%7CMaterial+Icons+Outlined" rel="stylesheet">\n
<li class="nav-item dropdown active mt-2 mr-2">\n
<a href="#" class="nav-link dropdown-toggle" id="navbarDropdownMenuLink" data-toggle="dropdown">\n
<span class="material-icons-outlined" style="font-size:20px; vertical-align: bottom; color:white">\n
language\n
</span>\n
</a>\n
<div class="dropdown-menu" style="width:70px; min-width:70px;" aria-labelledby="navbarDropdownMenuLink">\n
<a class="dropdown-item" href="/">\n
<img src="/bundles/startplatzstyle/images/german_language.png" height="20px;" alt="Deutsch">\n
</a>\n
\n
<a class="dropdown-item" href="/en">\n
<img src="/bundles/startplatzstyle/images/english_language.png" height="20px;" alt="English">\n
</a>\n
\n
<a class="dropdown-item" href="/fr/">\n
<img src="/bundles/startplatzstyle/images/french_language.png" height="20px;" alt="Français">\n
</a>\n
</div>\n
</li>\n
</li>\n
\n
<li class="nav-item active p-0 m-0 ml-lg-4 mt-2">\n
<a class="nav-link px-3"\n
style="background-color:#7ab800; border-radius: 5px;"\n
href="/login/">\n
Login\n
</a>\n
</li>\n
</ul>\n
</div>\n
</nav>\n
\n
<!-- homepage nav.homepage.bootstrap4 ends -->\n
<!-- menu ends -->\n
\n
<section class="" style="background-color: rgba(82,84,89,0.2)">\n
<div class="container ">\n
<div class="row mx-1 text-center" style="background: url('https://res.cloudinary.com/startplatz/image/upload/q_auto/v1631787956/Wordpress/Website_career-page-header.png');\n
background-repeat: no-repeat;\n
background-size: cover;\n
background-position: center center;\n
color: #fff;\n
height: 100%;\n
padding-top: 30px;\n
padding-bottom: 80px;">\n
<p> </p>\n
<div class="col-12 ">\n
<h4 style="font-size: 25px; font-family: 'Source Sans Pro', sans-serif;">Wir sind der <b>STARTPLATZ</b> für deine Gründeridee.</h4>\n
<strong style="font-size:36px">Wiki</strong>\n
<p>Die wichtigsten Begriffe der Startup-Szene.</p>\n
</div>\n
<p> </p>\n
</div>\n
</div>\n
</section>\n
\n
<section class="" style="background-color: rgba(82,84,89,0.2)">\n
<div class="overlay"></div>\n
<div class="container">\n
<div class="row px-3">\n
<div class="col-12 p-3" style="background:#ffffff;">\n
<div class="row">\n
<div class="container">\n
<div class="row">\n
<div class="col-12 col-md-8 page-main">\n
<div class="separator quadruple"></div>\n
\n
\n
<section>\n
<div class="section-header">\n
<h1>Anton Osika & Lovable: KI ersetzt Code durch Text</h1>\n
</div>\n
</section>\n
\n
\n
<article id="post-78835" >\n
\n
\n
\t\t<h2>Anton Osika – Der Physiker, der das Programmieren überflüssig machen will</h2>\n
<p>Was passiert, wenn ein Physiker mit einer Vorliebe für Datenanalyse und KI beschließt, die Art und Weise zu verändern, wie Menschen Software bauen? Dann entsteht Lovable – eines der am schnellsten wachsenden KI-Startups Europas. Gegründet wurde es von Anton Osika, dessen Karriereweg vom CERN über E-Commerce-KI bis hin zur Gründung eines Tech-Unicorns führte.</p>\n
<p>Osikas Mission: Softwareentwicklung so zugänglich machen, dass jeder Mensch allein durch Texteingabe digitale Produkte bauen kann – ohne eine Zeile Code.</p>\n
<p><strong>Dieser Beitrag erzählt die Geschichte hinter Lovable – und warum Osika glaubt, dass bald jeder Mensch Software bauen kann.</strong></p>\n
<p> </p>\n
<h2>Vom Physikstudent zum Tech-Gründer</h2>\n
<p>Anton Osika wuchs in Schweden auf und zeigte früh ein Faible für Mathematik, Physik und Technologie. Bereits während seiner Studienzeit forschte er unter anderem an der Zhejiang University in China und beim ATLAS-Projekt am CERN, wo er Algorithmen zur Analyse großer Datensätze entwickelte. Diese Erfahrung legte den Grundstein für sein Interesse an künstlicher Intelligenz.</p>\n
<p>Seine berufliche Laufbahn begann bei Ampfield AB, bevor er als erster technischer Mitarbeiter beim schwedischen EdTech-Startup Sana Labs einstieg. Dort entwickelte er als Founding Engineer personalisierte Lernsysteme und baute das Entwicklerteam auf.</p>\n
<p>2020 folgte der nächste Meilenstein: Gemeinsam mit Oliver Edholm gründete er das KI-Unternehmen Depict.ai, das intelligente Produktempfehlungen für Online-Shops entwickelte. Innerhalb kurzer Zeit wurde Depict nicht nur technologisch, sondern auch kulturell zu einem Katalysator für junge Talente der europäischen KI-Szene.</p>\n
<p> </p>\n
<h2>Die 6-Uhr-Idee: Wie Lovable entstand</h2>\n
<p>Der Impuls zur Gründung von Lovable kam unerwartet – und früh am Morgen. Nach dem Launch von ChatGPT-3 begann Osika zu experimentieren: Was wäre, wenn man durch einfache Spracheingabe komplette Apps bauen könnte?</p>\n
<p>An einem Wochenende entwickelte er einen Prototypen namens „GPT Engineer“ und stellte ihn auf GitHub. Am nächsten Morgen war sein Post viral gegangen. Tausende Menschen – vor allem ohne technische Vorkenntnisse – meldeten sich, weil sie mithilfe des Tools zum ersten Mal eine eigene App bauen konnten.</p>\n
<p>Da wurde ihm klar: Die meisten Ideen der Welt scheitern nicht an der Kreativität, sondern an der fehlenden technischen Umsetzung.</p>\n
<p>Er griff zum Telefon, rief seinen Freund Fabian an und schlug vor: „Lass uns spazieren gehen, ich habe eine Idee.“ Zwei Stunden später, noch vor dem Frühstück, war klar: Sie gründen ein Unternehmen – nicht um Entwicklern zu helfen, schneller zu coden. Sondern um das Coden selbst überflüssig zu machen.</p>\n
<blockquote class="twitter-tweet">\n
<p lang="en" dir="ltr">Lovable just raised $200M at a $1.8B valuation led by Accel.</p>\n
<p>This all started unexpectedly with me calling my friend at 6AM to go for a walk.</p>\n
<p>I've never shared this story before: (thread) <a href="https://t.co/6AEmzsw3HQ">pic.twitter.com/6AEmzsw3HQ</a></p>\n
<p>— Anton Osika – eu/acc (@antonosika) <a href="https://twitter.com/antonosika/status/1945899512503112035?ref_src=twsrc%5Etfw">July 17, 2025</a></p></blockquote>\n
<p><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script></p>\n
<p> </p>\n
<h2>Lovable: Das Produkt, das alle anderen Produkte baut</h2>\n
<p>Im November 2023 war Lovable offiziell geboren. Die Idee: Jeder Mensch soll Apps und Webseiten bauen können – nur mit Text. Die Plattform verbindet Design, Backend und Automatisierung in einem einzigen KI-Tool.</p>\n
<p>Der Erfolg ließ nicht lange auf sich warten. Innerhalb von nur 60 Tagen erreichte Lovable einen Jahresumsatz von zehn Millionen US-Dollar. Die Nutzerzahlen stiegen explosionsartig auf über zwei Millionen, darunter 180.000 zahlende Abonnenten.</p>\n
<p>Im Sommer 2025 folgte eine rekordverdächtige Series-A-Finanzierung: 200 Millionen Dollar bei einer Bewertung von 1,8 Milliarden. Investoren wie Accel, Creandum und Visionaries Club waren überzeugt – nicht nur vom Produkt, sondern von der Vision dahinter.</p>\n
<p> </p>\n
<h2>Vision: 1 Milliarde Menschen zu „Buildern“ machen</h2>\n
<p>Osika vergleicht Lovable gern mit Canva: Vor Canva gab es rund fünf Millionen Designer weltweit, die mit Tools wie Photoshop arbeiteten. Durch Canva wurde Design demokratisiert – heute gibt es über 220 Millionen Designer.</p>\n
<p>Lovable soll denselben Effekt auf die Softwareentwicklung haben. Aktuell gibt es weltweit rund 47 Millionen Entwickler. Osika will eine Milliarde Menschen dazu befähigen, digitale Produkte zu bauen – unabhängig von ihrer Ausbildung oder Herkunft.</p>\n
<p>Die Plattform macht es möglich, in weniger als einer Stunde eine funktionierende App zu erstellen. Wer bisher 300+ Stunden Entwicklungszeit gebraucht hätte, kann nun selbstständig aktiv werden. Erste Erfolgsgeschichten zeigen, dass auch Nicht-Techies profitabel Softwareunternehmen aufbauen.</p>\n
<p> </p>\n
<h2>Führungsstil: Geschwindigkeit, Wirkung, Fokus</h2>\n
<p>Anton Osika ist ein Gründer, der Geschwindigkeit mit Tiefgang kombiniert. Er arbeitet bevorzugt mit kleinen, hochkompetenten Teams und legt großen Wert auf Produktintuition, Qualität und Nutzererlebnis. Seine Teams bestehen oft aus Menschen mit unkonventionellen Hintergründen – Physiker, Autodidakten, Unternehmer.</p>\n
<p>Dabei bleibt er einem Prinzip treu: Technologie soll eine echte Wirkung entfalten. Sie soll Menschen befähigen, Probleme zu lösen, Ideen umzusetzen – und Neues zu schaffen.</p>\n
<p> </p>\n
<h2>Fazit: Wenn KI mehr als ein Werkzeug ist</h2>\n
<p>Anton Osikas Karriere zeigt eindrucksvoll, was möglich ist, wenn wissenschaftliche Neugier, technologische Expertise und unternehmerische Vision aufeinandertreffen. Mit Lovable baut er nicht nur ein Produkt, sondern eine neue Art von digitaler Infrastruktur – eine, die die Macht der Software allen zugänglich macht.</p>\n
<p> </p>\n
\n
</article><!-- #post-## -->\n
\n
\n
\n
<div class="separator quadruple"></div>\n
</div>\n
<div class="col-12 col-md-4 page-aside">\n
\n
<div class="separator quadruple"></div>\n
\n
<section>\n
<style>\r\n
.tagsWiki a{border:1px solid #DDD;display:inline-block;color:#717171;background:#FFF;-webkit-box-shadow:0 1px 1px 0 rgba(180,180,180,0.1);box-shadow:0 1px 1px 0 rgba(180,180,180,0.1);-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-ms-transition:all .1s ease-in-out;transition:all .1s ease-in-out;border-radius:2px;margin:0 3px 6px 0;padding:2px 6px}\r\n
.tagsWiki a.primary{color:#FFF;background-color:#428BCA;border-color:#357EBD}\r\n
.tagsWiki a.success{color:#FFF;background-color:#5CB85C;border-color:#4CAE4C}\r\n
.tagsWiki a.info{color:#FFF;background-color:#5BC0DE;border-color:#46B8DA}\r\n
.tagsWiki a.warning{color:#FFF;background-color:#F0AD4E;border-color:#EEA236}\r\n
.tagsWiki a.danger{color:#FFF;background-color:#958282;border-color:#958282}\r\n
.tagsWiki a.web3{color:#FFF;background-color:#F13A59;border-color:#F13A59}\r\n
\r\n
</style>\r\n
<div class="section-header">\r\n
<center><h2>Startup Wiki</h2></center>\r\n
</div>\r\n
<div class="tagsWiki">\r\n
<a href="https://www.startplatz.de/startup-wiki/accelerator/" class="primary">Accelerator</a> <a href="https://www.startplatz.de/startup-wiki/business-model-canvas/" class="success">Business Model Canvas</a> <a href="https://www.startplatz.de/startup-wiki/coworking/" class="info">Coworking Space</a> <a href="https://www.startplatz.de/startup-wiki/crowdfunding/" class="danger">Crowdfunding</a> <a href="https://www.startplatz.de/crowdinvesting/" class="warning">Crowdinvesting</a> <a href="https://www.startplatz.de/startup-wiki/data-science-wissen/" class="success">Data Science</a><a href="https://www.startplatz.de/startup-wiki-design-thinking/" class="danger">Design Thinking</a> <a href="https://www.startplatz.de/disrupt-me/" class="info">Disrupt.me!</a> <a href="https://www.startplatz.de/startup-wiki/fintech/" class="primary">FinTech</a><a href="https://www.startplatz.de/google-adwords/" class="primary">Google Adwords</a> <a href="https://www.startplatz.de/growth-hacking/" class="warning">Growth Hacking</a><a href="https://www.startplatz.de/pen-paper-hackathon/" class="primary">Hackathon</a> \r\n
<a href="https://www.startplatz.de/startup-wiki/change-management/" class="info">Change Management</a> <a href="https://www.startplatz.de/startup-wiki/Industrie4.0" class="success">Industrie4.0</a> <a href="https://www.startplatz.de/startup-wiki/innovation/" class="success">Innovation</a> <a href="https://www.startplatz.de/startup-wiki/insurtech/" class="primary">InsurTech</a> <a href="https://www.startplatz.de/startup-wiki/lean-startup-methode/" class="info">Lean Startup</a> \r\n
<a href="https://www.startplatz.de/startup-wiki/web-3-0-nft-metaverse-glossar/" class="web3">Metaverse</a>\r\n
<a href="https://www.startplatz.de/startup-wiki/mvp/" class="danger">MVP</a> <a href="https://www.startplatz.de/new-work-die-zukunft-der-arbeitswelt/" class="warning">New Work</a> \r\n
<a href="https://www.startplatz.de/startup-wiki/web-3-0-nft-metaverse-glossar/" class="web3">NFT</a>\r\n
<a href="https://www.startplatz.de/was-ist-open-innovation/" class="success">Open Innovation</a><a href="https://www.startplatz.de/startup-wiki/pitch/" class="danger">Pitch</a> <a href="https://www.startplatz.de/en/startup-wiki/pitch-deck-guide/" class="success">Pitch Deck</a><a href="https://www.startplatz.de/startup-wiki/reverse-pitch/" class="info">Reverse Pitch</a> <a href="https://www.startplatz.de/startup-wiki/scrum/" class="primary">Scrum</a> <a href="https://www.startplatz.de/startup-wiki/social-entrepreneurship/" class="warning">Social Entrepreneurship</a><a href="https://www.startplatz.de/startup-wiki/startup-inkubator/" class="primary">Startup Inkubator</a> <a href="https://www.startplatz.de/startup-wiki/venture-capital/" class="success">Venture Capital</a>\r\n
<a href="https://www.startplatz.de/startup-wiki/web-3-0-nft-metaverse-glossar/" class="web3">Web 3.0</a>\r\n
</div>\r\n
\r\n
\n
</section>\n
\n
<div class="card bg-success pb-3">\n
<div class="banner-content text-center">\n
<h2 class="text-center">Memberships</h2>\n
<hr class="hr-green">\n
<p class="text">Werde Teil der größten Startup Community im Rheinland, bereits ab 10 €/Monat!</p>\n
<a href="/memberships" class="btn btn-success">Jetzt informieren!</a>\n
</div>\n
</div>\n
<div class="mt-3"></div>\n
<h2 class="text-center">Aktuelle Blog Posts</h2>\n
<div class="row">\n
<div class="col-12 text-center">\n
<a href="/blog" class="btn btn-outline-dark">\n
Alle anzeigen\n
</a>\n
</div>\n
</div>\n
\n
<div class="tweet mt-3">\n
<div class="card">\n
<div class="card-body">\n
<div class="row">\n
<div class="col-4">\n
<img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2026/06/Titelbild-Blogbeitrag-Blog-Website-10-80x80.jpg" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n
<div class="col-8">\n
<a class="stretched-link" href="https://www.staging.startplatz.de/jenseits-von-venture-capital-wie-gruender-in-der-fruehphase-unkonventionell-an-kapital-kommen/">Jenseits von Venture Capital: Wie Gründer in der Frühphase unkonventionell an Kapital kommen</a> <br> 3. Juni </div>\n
</div>\n
</div>\n
</div>\n
<div class="card">\n
<div class="card-body">\n
<div class="row">\n
<div class="col-4">\n
<img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2026/06/Titelbild-Blogbeitrag-Blog-Website-9-80x80.jpg" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n
<div class="col-8">\n
<a class="stretched-link" href="https://www.staging.startplatz.de/remote-work-vs-vor-ort-jobs-wo-startups-ansetzen-koennen/">Remote Work vs. Vor-Ort-Jobs: Wo Startups ansetzen können</a> <br> 3. Juni </div>\n
</div>\n
</div>\n
</div>\n
<div class="card">\n
<div class="card-body">\n
<div class="row">\n
<div class="col-4">\n
<img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2026/05/Titelbild-Blogbeitrag-Blog-Website-8-80x80.jpg" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n
<div class="col-8">\n
<a class="stretched-link" href="https://www.staging.startplatz.de/die-industrie-toleriert-keine-stillstaende-schnelle-rekrutierung-schafft-wettbewerbsvorteile/">Die Industrie toleriert keine Stillstände – schnelle Rekrutierung schafft Wettbewerbsvorteile</a> <br> 29. Mai </div>\n
</div>\n
</div>\n
</div>\n
<div class="card">\n
<div class="card-body">\n
<div class="row">\n
<div class="col-4">\n
<img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2026/05/Titelbild-Blogbeitrag-Blog-Website-7-80x80.jpg" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n
<div class="col-8">\n
<a class="stretched-link" href="https://www.staging.startplatz.de/wie-zentralbanken-den-goldmarkt-die-preisbildung-beeinflussen/">Wie Zentralbanken den Goldmarkt & die Preisbildung beeinflussen</a> <br> 20. Mai </div>\n
</div>\n
</div>\n
</div>\n
<div class="card">\n
<div class="card-body">\n
<div class="row">\n
<div class="col-4">\n
<img width="80" height="80" src="https://www.staging.startplatz.de/wp-content/uploads/2026/05/Titelbild-Blogbeitrag-Blog-Website-6-80x80.jpg" class="media-object img-rounded wp-post-image" alt="" decoding="async" loading="lazy" /> </div>\n
<div class="col-8">\n
<a class="stretched-link" href="https://www.staging.startplatz.de/entdecke-neue-strategien-fuer-dein-startup/">Entdecke neue Strategien für dein Startup!</a> <br> 15. Mai </div>\n
</div>\n
</div>\n
</div>\n
\n
</div>\n
\n
<br />\n
\n
</div>\n
</div>\n
</div>\n
</div>\n
</div>\n
</div>\n
</div>\n
</section>\n
\n
\n
<!-- sp-connect footer starts -->\n
\n
<style type="text/css">\n
.ftco-section {\n
padding: 5em 0;\n
position: relative; }\n
@media (max-width: 767.98px) {\n
.ftco-section {\n
padding: 6em 0; } }\n
\n
.ftco-footer {\n
font-size: 16px;\n
background: #232931;\n
padding: 7em 0;\n
z-index: 0; }\n
.ftco-footer .ftco-footer-logo {\n
text-transform: uppercase;\n
letter-spacing: .1em; }\n
.ftco-footer .ftco-footer-widget h2 {\n
font-weight: normal;\n
color: #fff;\n
margin-bottom: 40px;\n
font-size: 22px;\n
font-weight: 600; }\n
.ftco-footer .ftco-footer-widget ul li {\n
margin-bottom: 10px; }\n
.ftco-footer .ftco-footer-widget ul li a {\n
color: rgba(255, 255, 255, 0.6); }\n
.ftco-footer .ftco-footer-widget ul li a span {\n
color: rgba(255, 255, 255, 0.6); }\n
.ftco-footer .ftco-footer-widget .btn-primary {\n
background: #fff !important;\n
border: 2px solid #fff !important; }\n
.ftco-footer .ftco-footer-widget .btn-primary:hover {\n
background: #fff;\n
border: 2px solid #fff !important; }\n
.ftco-footer p {\n
color: rgba(255, 255, 255, 0.7); }\n
.ftco-footer a {\n
color: rgba(255, 255, 255, 0.7); }\n
.ftco-footer a:hover {\n
color: #fff; }\n
.ftco-footer .ftco-heading-2 {\n
font-size: 17px;\n
font-weight: 400;\n
color: #000000; }\n
\n
.ftco-footer-social li {\n
list-style: none;\n
margin: 0 10px 0 0;\n
display: inline-block; }\n
.ftco-footer-social li a {\n
height: 50px;\n
width: 50px;\n
display: block;\n
float: left;\n
background: rgba(255, 255, 255, 0.1);\n
border-radius: 50%;\n
position: relative; }\n
.ftco-footer-social li a span {\n
position: absolute;\n
font-size: 26px;\n
top: 50%;\n
left: 50%;\n
-webkit-transform: translate(-50%, -50%);\n
-ms-transform: translate(-50%, -50%);\n
transform: translate(-50%, -50%); }\n
.ftco-footer-social li a:hover {\n
color: #fff; }\n
\n
.footer-small-nav > li {\n
display: inline-block; }\n
.footer-small-nav > li a {\n
margin: 0 10px 10px 0; }\n
.footer-small-nav > li a:hover, .footer-small-nav > li a:focus {\n
color: #033fff; }\n
\n
.media .ftco-icon {\n
width: 100px; }\n
.media .ftco-icon span {\n
color: #033fff; }\n
\n
\n
.spGreen h1,.spGreen h2,.spGreen h3,.spGreen h4,.spGreen h5,.spGreen h6 {color: rgba(122,184,8,1) !important;}\n
.spBgGreen {background-color: rgba(122,184,8,1) !important;color: white;}\n
\n
/* --- Corporate: spRed/ RED ---- */\n
.color-danger {\n
color:#8F2640;\n
}\n
\n
.spRed h1,.spRed h2,.spRed h3,.spRed h4,.spRed h5,.spRed h6 {color: rgba(143,38,64,1) !important;}\n
.bgSpRed { background-color: rgba(143,38,64,0.99)!important;}\n
\n
</style>\n
\n
<footer class="ftco-footer ftco-section">\n
<div class="container">\n
<div class="row my-2">\n
<div class="col-md-2">\n
<div class="ftco-footer-widget mb-3">\n
<h2 class="ftco-heading-2">Über STARTPLATZ</h2>\n
<p>Mit Standorten in Köln und Düsseldorf ist STARTPLATZ der größte Startup Inkubator und Accelerator in NRW</p>\n
\n
<ul class="ftco-footer-social list-unstyled float-md-left float-lft mt-3">\n
<li class="ftco-animate"><a href="https://twitter.com/startplatz"><span class="fab fa-twitter"></span></a></li>\n
<li class="ftco-animate"><a href="https://de-de.facebook.com/StartPlatz/"><span class="fab fa-facebook-f"></span></a></li>\n
<li class="ftco-animate"><a href="https://www.instagram.com/startplatz/"><span class="fab fa-instagram"></span></a></li>\n
</ul>\n
</div>\n
</div>\n
<div class="col-md-3">\n
<div class="ftco-footer-widget mb-4 ml-md-4">\n
<h2 class="ftco-heading-2 mb-2">Über diese Website</h2>\n
<ul class="list-unstyled">\n
<li><a href="/kontakt-aufnehmen"><span class="fas fa-long-arrow-alt-right mr-2"></span>Kontakt</a></li>\n
<li><a href="/wlan-am-startplatz-koeln"><span class="fas fa-long-arrow-alt-right mr-2"></span>WLAN am STARTPLATZ Koeln</a></li>\n
<li><a href="/pressebereich"><span class="fas fa-long-arrow-alt-right mr-2"></span>Presse</a></li>\n
<li><a href="/jobs"><span class="fas fa-long-arrow-alt-right mr-2"></span>Jobs</a></li>\n
<li><a href="/standorte"><span class="fas fa-long-arrow-alt-right mr-2"></span>Standorte</a></li>\n
<li><a href="/startplatz-archiv"><span class="fas fa-long-arrow-alt-right mr-2"></span>Archiv</a></li>\n
<li><a href="/startplatz-agb"><span class="fas fa-long-arrow-alt-right mr-2"></span>AGB</a></li>\n
<li><a href="/impressum"><span class="fas fa-long-arrow-alt-right mr-2"></span>Impressum</a></li>\n
<li><a href="/support"><span class="fas fa-long-arrow-alt-right mr-2"></span>Support</a></li>\n
<li><a href="/datenschutz"><span class="fas fa-long-arrow-alt-right mr-2"></span>Datenschutz</a></li>\n
</ul>\n
</div>\n
</div>\n
<div class="col-md-3">\n
<div class="ftco-footer-widget mb-4">\n
<h2 class="ftco-heading-2">Top Themen</h2>\n
<ul class="list-unstyled">\n
<li><a href="/coworking-koeln"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworking Köln</a></li>\n
<li><a href="/coworking-duesseldorf"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworking Düsseldorf</a></li>\n
<li><a href="/konferenzraum"><span class="fas fa-long-arrow-alt-right mr-2"></span>Konferenzraum mieten in Köln</a></li>\n
<li><a href="/duesseldorf-tagungsraeume-und-konferenzraeume/"><span class="fas fa-long-arrow-alt-right mr-2"></span>Konferenzraum mieten in Düsseldorf</a></li>\n
<li><a href="/startup-wiki/business-model-canvas"><span class="fas fa-long-arrow-alt-right mr-2"></span>Business Model Canvas</a></li>\n
<li><a href="/accelerator/"><span class="fas fa-long-arrow-alt-right mr-2"></span>STARTPLATZ Accelerator</a></li>\n
<li><a href="/corporate-innovation-page"><span class="fas fa-long-arrow-alt-right mr-2"></span>Corporate Innovation</a></li>\n
<li><a href="/startup-wiki/pitch"><span class="fas fa-long-arrow-alt-right mr-2"></span>Pitch</a></li>\n
<li><a href="/projektbuero-mieten"><span class="fas fa-long-arrow-alt-right mr-2"></span>Projektbüro mieten</a></li>\n
<li><a href="/meetingraeume-mieten"><span class="fas fa-long-arrow-alt-right mr-2"></span>Meetingräume mieten</a></li>\n
<li><a href="/coworker-werden"><span class="fas fa-long-arrow-alt-right mr-2"></span>Coworker werden</a></li>\n
<li><a href="/startup-membership"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Firmenmitgliedschaft</a></li>\n
<li><a href="/karriere"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Jobs am STARTPLATZ</a></li>\n
<li><a href="/digital-speed-networking"><span class="fas fa-long-arrow-alt-right mr-2"></span>Speed Networking</a></li>\n
<li><a href="/open-accelerator"><span class="fas fa-long-arrow-alt-right mr-2"></span>Inkubator</a></li>\n
<li><a href="/benefits/perks"><span class="fas fa-long-arrow-alt-right mr-2"></span>Software für Startups</a></li>\n
<li><a href="/startup-wiki"><span class="fas fa-long-arrow-alt-right mr-2"></span>Startup Wiki</a></li>\n
<li><a href="/sprechstunden"><span class="fas fa-long-arrow-alt-right mr-2"></span>Sprechstunden</a></li>\n
<li><a href="/mentoring"><span class="fas fa-long-arrow-alt-right mr-2"></span>Mentorinnen und Mentoren</a></li>\n
</ul>\n
</div>\n
</div>\n
<div class="col-md-4">\n
<div class="ftco-footer-widget mb-4">\n
<h2 class="ftco-heading-2">Kontakt</h2>\n
<div class="row">\n
<div class="col-6">\n
<p class="address city">Köln</p>\n
<p class="address">Im Mediapark 5 <br>50670 Köln</p>\n
<p class="address mb-0">info@startplatz.de</p>\n
<p class="address">+49 221 975 802 00</p>\n
</div>\n
<div class="col-6">\n
<p class="address city">Düsseldorf</p>\n
<p class="address">Speditionstraße 15a <br>40221 Düsseldorf</p>\n
<p class="address mb-0">info@startplatz.de</p>\n
<p class="address">+49 211 936 725 20</p>\n
</div>\n
</div>\n
<div class="newsletter">\n
<h2 class="mb-0">Newsletter</h2>\n
<p>Immer auf dem Laufenden bleiben?\n
<br>Erhalte regelmäßig alle News aus dem STARTPLATZ, zu Workshops und Events.</p>\n
\n
<!-- Begin MailChimp Signup Form -->\n
<div id="mc_embed_signup">\n
<form id="mc-embedded-subscribe-form" class="validate" action="https://startplatz.us5.list-manage.com/subscribe?u=8a2b498caca4323b774191382&id=be73f77d94" method="post" name="mc-embedded-subscribe-form" novalidate="" target="_blank">\n
<div id="mc_embed_signup_scroll form-group email-wrapper">\n
<button type="submit" class="btn btn-success ml-2">Hier Abonnieren</button>\n
<!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->\n
<div style="position: absolute; left: -5000px;"><input tabindex="-1" name="b_8a2b498caca4323b774191382_51dae9d56a" type="text" value="" /></div>\n
<div class="clear"></div>\n
</div>\n
</form></div>\n
<!--End mc_embed_signup-->\n
\n
</div>\n
<div class="row">\n
<div class="col-12 mt-4">\n
<div class="pe-richsnippets"></div>\n
<script type="text/javascript" src="https://www.provenexpert.com/widget/richsnippet.js?u=1HQBkRmo1xQpmqGB1xmA5DGAlMwpkxQZ&v=2" async></script>\n
</div>\n
</div>\n
</div>\n
</div>\n
</div>\n
\n
<div class="row">\n
<div class="col-md-12 text-center">\n
\n
<p>\n
Copyright ©<script>document.write(new Date().getFullYear());</script> All rights reserved\n
</p>\n
</div>\n
</div>\n
</div>\n
</footer>\n
\n
<!-- sp-connect footer ends -->\n
\n
<!-- wp_footer starts -->\n
<script type="speculationrules">\n
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/startplatz/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}\n
</script>\n
<script async>(function(s,u,m,o,j,v){j=u.createElement(m);v=u.getElementsByTagName(m)[0];j.async=1;j.src=o;j.dataset.sumoSiteId='39f60b00513044004a8fe0004ce6fc0099bffb000c2cd200cfc8f4006d6fae00';j.dataset.sumoPlatform='wordpress';v.parentNode.insertBefore(j,v)})(window,document,'script','//load.sumome.com/');</script> <script type="application/javascript">\r\n
const ajaxURL = "https://www.staging.startplatz.de/wp-admin/admin-ajax.php";\r\n
\r\n
function sumo_add_woocommerce_coupon(code) {\r\n
jQuery.post(ajaxURL, {\r\n
action: 'sumo_add_woocommerce_coupon',\r\n
code: code,\r\n
});\r\n
}\r\n
\r\n
function sumo_remove_woocommerce_coupon(code) {\r\n
jQuery.post(ajaxURL, {\r\n
action: 'sumo_remove_woocommerce_coupon',\r\n
code: code,\r\n
});\r\n
}\r\n
\r\n
function sumo_get_woocommerce_cart_subtotal(callback) {\r\n
jQuery.ajax({\r\n
method: 'POST',\r\n
url: ajaxURL,\r\n
dataType: 'html',\r\n
data: {\r\n
action: 'sumo_get_woocommerce_cart_subtotal',\r\n
},\r\n
success: function (subtotal) {\r\n
return callback(null, subtotal);\r\n
},\r\n
error: function (err) {\r\n
return callback(err, 0);\r\n
}\r\n
});\r\n
}\r\n
</script>\r\n
<script id="wp-emoji-settings" type="application/json">\n
{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.staging.startplatz.de/wp-includes/js/wp-emoji-release.min.js?ver=6.9.4"}}\n
</script>\n
<script type="module">\n
/* <![CDATA[ */\n
/*! This file is auto-generated */\n
const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))});\n
//# sourceURL=https://www.staging.startplatz.de/wp-includes/js/wp-emoji-loader.min.js\n
/* ]]> */\n
</script>\n
<!-- wp_footer ends -->\n
<!-- startplatz default js starts -->\n
<!-- Optional JavaScript -->\n
<!-- jQuery first, then Popper.js, then Bootstrap JS -->\n
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>\n
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>\n
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script><!-- startplatz default js ends -->\n
\n
\n
<!-- START of Symfony Web Debug Toolbar --><div class="sf-toolbar sf-toolbar-opened" role="region" aria-label="Symfony Web Debug Toolbar" data-frankenphp-hot-reload-preserve> <div id="sfwdt130755"> <div id="sfToolbarClearer-130755" class="sf-toolbar-clearer"></div><div id="sfToolbarMainContent-130755" class="sf-toolbarreset notranslate clear-fix" data-no-turbolink data-turbo="false"> <div class="sf-toolbar-block sf-toolbar-block-request sf-toolbar-status-normal " > <a href="http://www.staging.startplatz.de/_profiler/130755?panel=request"> <div class="sf-toolbar-icon"> <svg xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Symfony" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M12 .9C5.8.9.9 5.8.9 12a11 11 0 1 0 22.2 0A11 11 0 0 0 12 .9zm6.5 6c-.6 0-.9-.3-.9-.8 0-.2 0-.4.2-.6l.2-.4c0-.3-.5-.4-.6-.4-1.8.1-2.3 2.5-2.7 4.4l-.2 1c1 .2 1.8 0 2.2-.3.6-.4-.2-.7-.1-1.2.1-.3.5-.5.7-.6.5 0 .7.5.7.9 0 .7-1 1.8-3 1.8l-.6-.1-.6 2.4c-.4 1.6-.8 3.8-2.4 5.7-1.4 1.7-2.9 1.9-3.5 1.9-1.2 0-1.9-.6-2-1.5 0-.8.7-1.3 1.2-1.3.6 0 1.1.5 1.1 1s-.2.6-.4.6c-.1.1-.3.2-.3.4 0 .1.1.3.4.3.5 0 .8-.3 1.1-.5 1.2-.9 1.6-2.7 2.2-5.7l.1-.7.7-3.2c-.8-.6-1.3-1.4-2.4-1.7-.6-.1-1.1.1-1.5.5-.4.5-.2 1.1.2 1.5l.7.6c.7.8 1.2 1.6 1 2.5-.3 1.5-2 2.6-4 1.9-1.8-.6-2-1.8-1.8-2.5.2-.6.6-.7 1.1-.6.5.2.6.7.6 1.2l-.1.3c-.2.1-.3.3-.3.4-.1.4.4.6.7.7.7.3 1.6-.2 1.8-.8a1 1 0 0 0-.4-1.1l-.7-.8c-.4-.4-1.1-1.4-.7-2.6.1-.5.4-.9.7-1.3a4 4 0 0 1 2.8-.6c1.2.4 1.8 1.1 2.6 1.8.5-1.2 1-2.4 1.8-3.5.9-.9 1.9-1.6 3.1-1.7 1.3.2 2.2.7 2.2 1.6 0 .4-.2 1.1-.9 1.1z"/></svg> <span class="sf-toolbar-value sf-toolbar-ajax-request-counter"> Loading… </span> </div> </a> <div class="sf-toolbar-info"> <div class="sf-toolbar-info-piece"> <b>Loading the web debug toolbar…</b> </div> <div class="sf-toolbar-info-piece"> Attempt #<span id="sfLoadCounter-130755"></span> </div> <div class="sf-toolbar-info-piece"> <b> <button class="sf-cancel-button" type="button" id="sfLoadCancel-130755" title="Cancel loading">Cancel</button> </b> </div> </div></div> <button class="sf-toolbar-toggle-button" type="button" id="sfToolbarToggleButton-130755" accesskey="D" aria-expanded="true" aria-controls="sfToolbarMainContent-130755" aria-label="Toggle Symfony Toolbar"> <i class="sf-toolbar-icon-opened" title="Close Toolbar"><svg xmlns="http://www.w3.org/2000/svg" data-icon-name="icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <line x1="18" y1="6" x2="6" y2="18"></line> <line x1="6" y1="6" x2="18" y2="18"></line></svg></i> <i class="sf-toolbar-icon-closed" title="Open Toolbar"><svg xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Symfony" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" d="M12 .9C5.8.9.9 5.8.9 12a11 11 0 1 0 22.2 0A11 11 0 0 0 12 .9zm6.5 6c-.6 0-.9-.3-.9-.8 0-.2 0-.4.2-.6l.2-.4c0-.3-.5-.4-.6-.4-1.8.1-2.3 2.5-2.7 4.4l-.2 1c1 .2 1.8 0 2.2-.3.6-.4-.2-.7-.1-1.2.1-.3.5-.5.7-.6.5 0 .7.5.7.9 0 .7-1 1.8-3 1.8l-.6-.1-.6 2.4c-.4 1.6-.8 3.8-2.4 5.7-1.4 1.7-2.9 1.9-3.5 1.9-1.2 0-1.9-.6-2-1.5 0-.8.7-1.3 1.2-1.3.6 0 1.1.5 1.1 1s-.2.6-.4.6c-.1.1-.3.2-.3.4 0 .1.1.3.4.3.5 0 .8-.3 1.1-.5 1.2-.9 1.6-2.7 2.2-5.7l.1-.7.7-3.2c-.8-.6-1.3-1.4-2.4-1.7-.6-.1-1.1.1-1.5.5-.4.5-.2 1.1.2 1.5l.7.6c.7.8 1.2 1.6 1 2.5-.3 1.5-2 2.6-4 1.9-1.8-.6-2-1.8-1.8-2.5.2-.6.6-.7 1.1-.6.5.2.6.7.6 1.2l-.1.3c-.2.1-.3.3-.3.4-.1.4.4.6.7.7.7.3 1.6-.2 1.8-.8a1 1 0 0 0-.4-1.1l-.7-.8c-.4-.4-1.1-1.4-.7-2.6.1-.5.4-.9.7-1.3a4 4 0 0 1 2.8-.6c1.2.4 1.8 1.1 2.6 1.8.5-1.2 1-2.4 1.8-3.5.9-.9 1.9-1.6 3.1-1.7 1.3.2 2.2.7 2.2 1.6 0 .4-.2 1.1-.9 1.1z"/></svg></i> </button></div> </div> <link rel="stylesheet" nonce="abd85cfe287d95687bdb0d8ee39a1461" href="http://www.staging.startplatz.de/_wdt/styles" /> <script nonce="b0b38589ce856ca1cb157cad2732e1f8">/*<![CDATA[*/ if (typeof Sfjs === 'undefined' || typeof Sfjs.loadToolbar === 'undefined') { Sfjs = (function() { "use strict"; if ('classList' in document.documentElement) { var hasClass = function (el, cssClass) { return el.classList.contains(cssClass); }; var removeClass = function(el, cssClass) { el.classList.remove(cssClass); }; var addClass = function(el, cssClass) { el.classList.add(cssClass); }; var toggleClass = function(el, cssClass) { el.classList.toggle(cssClass); }; } else { var hasClass = function (el, cssClass) { return el.className.match(new RegExp('\\b' + cssClass + '\\b')); }; var removeClass = function(el, cssClass) { el.className = el.className.replace(new RegExp('\\b' + cssClass + '\\b'), ' '); }; var addClass = function(el, cssClass) { if (!hasClass(el, cssClass)) { el.className += " " + cssClass; } }; var toggleClass = function(el, cssClass) { hasClass(el, cssClass) ? removeClass(el, cssClass) : addClass(el, cssClass); }; } var noop = function() {}; var profilerStorageKey = 'symfony/profiler/'; var addEventListener; var el = document.createElement('div'); if (!('addEventListener' in el)) { addEventListener = function (element, eventName, callback) { element.attachEvent('on' + eventName, callback); }; } else { addEventListener = function (element, eventName, callback) { element.addEventListener(eventName, callback, false); }; } var request = function(url, onSuccess, onError, payload, options, tries) { url = new URL(url); url.searchParams.set('XDEBUG_IGNORE', '1'); url = url.toString(); var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); options = options || {}; options.retry = options.retry || false; tries = tries || 1; /* this delays for 125, 375, 625, 875, and 1000, ... */ var delay = tries < 5 ? (tries - 0.5) * 250 : 1000; xhr.open(options.method || 'GET', url, true); xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); xhr.onreadystatechange = function(state) { if (4 !== xhr.readyState) { return null; } if (xhr.status == 404 && options.retry && !options.stop) { setTimeout(function() { if (options.stop) { return; } request(url, onSuccess, onError, payload, options, tries + 1); }, delay); return null; } if (200 === xhr.status) { (onSuccess || noop)(xhr); } else { (onError || noop)(xhr); } }; if (options.onSend) { options.onSend(tries); } xhr.send(payload || ''); }; var getPreference = function(name) { if (!window.localStorage) { return null; } return localStorage.getItem(profilerStorageKey + name); }; var setPreference = function(name, value) { if (!window.localStorage) { return null; } localStorage.setItem(profilerStorageKey + name, value); }; var requestStack = []; var extractHeaders = function(xhr, stackElement) { /* Here we avoid to call xhr.getResponseHeader in order to */ /* prevent polluting the console with CORS security errors */ var allHeaders = xhr.getAllResponseHeaders(); var ret; if (ret = allHeaders.match(/^x-debug-token:\s+(.*)$/im)) { stackElement.profile = ret[1]; } if (ret = allHeaders.match(/^x-debug-token-link:\s+(.*)$/im)) { stackElement.profilerUrl = ret[1]; } if (ret = allHeaders.match(/^Symfony-Debug-Toolbar-Replace:\s+(.*)$/im)) { stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === ret[1]; } }; var successStreak = 4; var pendingRequests = 0; var renderAjaxRequests = function() { var requestCounter = document.querySelector('.sf-toolbar-ajax-request-counter'); if (!requestCounter) { return; } requestCounter.textContent = requestStack.length; var infoSpan = document.querySelector(".sf-toolbar-ajax-info"); if (infoSpan) { infoSpan.textContent = requestStack.length + ' AJAX request' + (requestStack.length !== 1 ? 's' : ''); } var ajaxToolbarPanel = document.querySelector('.sf-toolbar-block-ajax'); if (requestStack.length) { ajaxToolbarPanel.style.display = ''; } else { ajaxToolbarPanel.style.display = 'none'; } if (pendingRequests > 0) { addClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else if (successStreak < 4) { addClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else { removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); removeClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); } }; var startAjaxRequest = function(index) { var tbody = document.querySelector('.sf-toolbar-ajax-request-list'); if (!tbody) { return; } var nbOfAjaxRequest = tbody.rows.length; if (nbOfAjaxRequest >= 100) { tbody.deleteRow(0); } var request = requestStack[index]; pendingRequests++; var row = document.createElement('tr'); request.DOMNode = row; var requestNumberCell = document.createElement('td'); requestNumberCell.textContent = index + 1; row.appendChild(requestNumberCell); var profilerCell = document.createElement('td'); profilerCell.textContent = 'n/a'; row.appendChild(profilerCell); var methodCell = document.createElement('td'); methodCell.textContent = request.method; row.appendChild(methodCell); var typeCell = document.createElement('td'); typeCell.textContent = request.type; row.appendChild(typeCell); var statusCodeCell = document.createElement('td'); var statusCode = document.createElement('span'); statusCode.textContent = 'n/a'; statusCodeCell.appendChild(statusCode); row.appendChild(statusCodeCell); var pathCell = document.createElement('td'); pathCell.className = 'sf-ajax-request-url'; if ('GET' === request.method) { var pathLink = document.createElement('a'); pathLink.setAttribute('href', request.url); pathLink.textContent = request.url; pathCell.appendChild(pathLink); } else { pathCell.textContent = request.url; } pathCell.setAttribute('title', request.url); row.appendChild(pathCell); var durationCell = document.createElement('td'); durationCell.className = 'sf-ajax-request-duration'; durationCell.textContent = 'n/a'; row.appendChild(durationCell); request.liveDurationHandle = setInterval(function() { durationCell.textContent = (new Date() - request.start) + ' ms'; }, 100); row.className = 'sf-ajax-request sf-ajax-request-loading'; tbody.insertBefore(row, null); var toolbarInfo = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); toolbarInfo.scrollTop = toolbarInfo.scrollHeight; renderAjaxRequests(); }; var finishAjaxRequest = function(index) { var request = requestStack[index]; clearInterval(request.liveDurationHandle); if (!request.DOMNode) { return; } if (request.toolbarReplace && !request.toolbarReplaceFinished && request.profile) { /* Flag as complete because finishAjaxRequest can be called multiple times. */ request.toolbarReplaceFinished = true; /* Search up through the DOM to find the toolbar's container ID. */ for (var elem = request.DOMNode; elem && elem !== document; elem = elem.parentNode) { if (elem.id.match(/^sfwdt/)) { Sfjs.loadToolbar(elem.id.replace(/^sfwdt/, ''), request.profile); break; } } } if (pendingRequests > 0) { pendingRequests--; } var row = request.DOMNode; /* Unpack the children from the row */ var profilerCell = row.children[1]; var methodCell = row.children[2]; var statusCodeCell = row.children[4]; var statusCodeElem = statusCodeCell.children[0]; var durationCell = row.children[6]; if (request.error) { row.className = 'sf-ajax-request sf-ajax-request-error'; methodCell.className = 'sf-ajax-request-error'; successStreak = 0; } else { row.className = 'sf-ajax-request sf-ajax-request-ok'; successStreak++; } if (request.statusCode) { if (request.statusCode < 300) { statusCodeElem.setAttribute('class', 'sf-toolbar-status'); } else if (request.statusCode < 400) { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-yellow'); } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } statusCodeElem.textContent = request.statusCode; } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } if (request.duration) { durationCell.textContent = request.duration + ' ms'; } if (request.profilerUrl) { profilerCell.textContent = ''; var profilerLink = document.createElement('a'); profilerLink.setAttribute('href', request.profilerUrl); profilerLink.textContent = request.profile; profilerCell.appendChild(profilerLink); } renderAjaxRequests(); }; if (window.EventSource) { var oldEventSource = window.EventSource; function patchedEventSource(url, options) { var es = new oldEventSource(url, options); if (!url.toString().match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var stackElement = { error: false, url: url, method: 'GET', type: 'event-stream', start: new Date() }; var idx = requestStack.push(stackElement) - 1; startAjaxRequest(idx); addEventListener(es, 'error', function () { stackElement.error = true; finishAjaxRequest(idx); }); addEventListener(es, 'open', function () { stackElement.statusCode = 200; stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = true; }); addEventListener(es, 'symfony:debug:started', function (event) { var items = event.data.split('\n'); stackElement.profile = items[0]; stackElement.profilerUrl = items[1]; }); addEventListener(es, 'symfony:debug:error', function (event) { stackElement.error = true; stackElement.statusCode = event.data; finishAjaxRequest(idx); }); addEventListener(es, 'symfony:debug:finished', function () { stackElement.duration = new Date() - stackElement.start; stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = true; finishAjaxRequest(idx); }); } return es; }; Object.defineProperties(patchedEventSource, Object.getOwnPropertyDescriptors(oldEventSource)); window.EventSource = patchedEventSource; } if (window.fetch && window.fetch.polyfill === undefined) { var oldFetch = window.fetch; window.fetch = function () { var promise = oldFetch.apply(this, arguments); var url = arguments[0]; var params = arguments[1]; var paramType = Object.prototype.toString.call(arguments[0]); if (paramType === '[object Request]') { url = arguments[0].url; params = { method: arguments[0].method, credentials: arguments[0].credentials, headers: arguments[0].headers, mode: arguments[0].mode, redirect: arguments[0].redirect }; } else { url = String(url); } if (!url.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var method = 'GET'; if (params && params.method !== undefined) { method = params.method; } var stackElement = { error: false, url: url, method: method, type: 'fetch', start: new Date() }; var idx = requestStack.push(stackElement) - 1; promise.then(function (r) { stackElement.duration = new Date() - stackElement.start; stackElement.error = r.status < 200 || r.status >= 400; stackElement.statusCode = r.status; stackElement.profile = r.headers.get('x-debug-token'); stackElement.profilerUrl = r.headers.get('x-debug-token-link'); stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === r.headers.get('Symfony-Debug-Toolbar-Replace'); finishAjaxRequest(idx); }, function (e){ stackElement.error = true; finishAjaxRequest(idx); }); startAjaxRequest(idx); } return promise; }; } if (window.XMLHttpRequest && XMLHttpRequest.prototype.addEventListener) { var proxied = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async, user, pass) { var self = this; /* prevent logging AJAX calls to static and inline files, like templates */ var path = url; if (url.slice(0, 1) === '/') { if (0 === url.indexOf('')) { path = url.slice(0); } } else if (0 === url.indexOf('http\u003A\/\/www.staging.startplatz.de')) { path = url.slice(32); } if (!path.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var stackElement = { error: false, url: url, method: method, type: 'xhr', start: new Date() }; var idx = requestStack.push(stackElement) - 1; this.addEventListener('readystatechange', function() { if (self.readyState == 4) { stackElement.duration = new Date() - stackElement.start; stackElement.error = self.status < 200 || self.status >= 400; stackElement.statusCode = self.status; extractHeaders(self, stackElement); finishAjaxRequest(idx); } }, false); startAjaxRequest(idx); } proxied.apply(this, Array.prototype.slice.call(arguments)); }; } return { hasClass: hasClass, removeClass: removeClass, addClass: addClass, toggleClass: toggleClass, getPreference: getPreference, setPreference: setPreference, addEventListener: addEventListener, request: request, renderAjaxRequests: renderAjaxRequests, getSfwdt: function(token) { return document.getElementById('sfwdt' + token); }, load: function(selector, url, onSuccess, onError, options) { var el = document.getElementById(selector); if (el && el.getAttribute('data-sfurl') !== url) { request( url, function(xhr) { el.innerHTML = xhr.responseText; el.setAttribute('data-sfurl', url); removeClass(el, 'loading'); var pending = pendingRequests; for (var i = 0; i < requestStack.length; i++) { startAjaxRequest(i); if (requestStack[i].duration || requestStack[i].error) { finishAjaxRequest(i); } } /* Revert the pending state in case there was a start called without a finish above. */ pendingRequests = pending; (onSuccess || noop)(xhr, el); }, function(xhr) { (onError || noop)(xhr, el); }, '', options ); } return this; }, showToolbar: function(token) { var sfwdt = this.getSfwdt(token); var toggleButton = document.querySelector(`#sfToolbarToggleButton-${token}`); if ('closed' === getPreference('toolbar/displayState')) { addClass(sfwdt.parentNode, 'sf-toolbar-closed'); removeClass(sfwdt.parentNode, 'sf-toolbar-opened'); if (toggleButton) { toggleButton.setAttribute('aria-expanded', 'false'); } } else { addClass(sfwdt.parentNode, 'sf-toolbar-opened'); removeClass(sfwdt.parentNode, 'sf-toolbar-closed'); if (toggleButton) { toggleButton.setAttribute('aria-expanded', 'true'); } } }, hideToolbar: function(token) { var sfwdt = this.getSfwdt(token); var toggleButton = document.querySelector(`#sfToolbarToggleButton-${token}`); addClass(sfwdt.parentNode, 'sf-toolbar-closed'); removeClass(sfwdt.parentNode, 'sf-toolbar-opened'); if (toggleButton) { toggleButton.setAttribute('aria-expanded', 'false'); } }, initToolbar: function(token) { this.showToolbar(token); var toggleButton = document.querySelector(`#sfToolbarToggleButton-${token}`); addEventListener(toggleButton, 'click', function (event) { event.preventDefault(); const newState = 'closed' === getPreference('toolbar/displayState') ? 'opened' : 'closed'; setPreference('toolbar/displayState', newState); 'opened' === newState ? Sfjs.showToolbar(token) : Sfjs.hideToolbar(token); }); }, loadToolbar: function(token, newToken) { var that = this; var triesCounter = document.getElementById('sfLoadCounter-' + token); var options = { retry: true, onSend: function (count) { if (count === 3) { that.initToolbar(token); } if (triesCounter) { triesCounter.textContent = count; } }, }; var cancelButton = document.getElementById('sfLoadCancel-' + token); if (cancelButton) { addEventListener(cancelButton, 'click', function (event) { event.preventDefault(); options.stop = true; that.hideToolbar(token); }); } newToken = (newToken || token); this.load( 'sfwdt' + token, 'http\u003A\/\/www.staging.startplatz.de\/_wdt\/xxxxxx'.replace(/xxxxxx/, newToken), function(xhr, el) { var toolbarContent = document.getElementById('sfToolbarMainContent-' + newToken); /* Do nothing in the edge case where the toolbar has already been replaced with a new one */ if (!toolbarContent) { return; } /* Replace the ID, it has to match the new token */ toolbarContent.parentElement.id = 'sfwdt' + newToken; /* Evaluate in global scope scripts embedded inside the toolbar */ var i, scripts = [].slice.call(el.querySelectorAll('script')); for (i = 0; i < scripts.length; ++i) { if (scripts[i].firstChild) { eval.call({}, scripts[i].firstChild.nodeValue); } } el.style.display = -1 !== xhr.responseText.indexOf('sf-toolbarreset') ? 'block' : 'none'; if (el.style.display == 'none') { return; } that.initToolbar(newToken); /* Handle toolbar-info position */ var toolbarBlocks = [].slice.call(el.querySelectorAll('.sf-toolbar-block')); for (i = 0; i < toolbarBlocks.length; ++i) { toolbarBlocks[i].onmouseover = function () { var toolbarInfo = this.querySelectorAll('.sf-toolbar-info')[0]; var pageWidth = document.body.clientWidth; var elementWidth = toolbarInfo.offsetWidth; var leftValue = (elementWidth + this.offsetLeft) - pageWidth; var rightValue = (elementWidth + (pageWidth - this.offsetLeft)) - pageWidth; /* Reset right and left value, useful on window resize */ toolbarInfo.style.right = ''; toolbarInfo.style.left = ''; if (elementWidth > pageWidth) { toolbarInfo.style.left = 0; } else if (leftValue > 0 && rightValue > 0) { toolbarInfo.style.right = (rightValue * -1) + 'px'; } else if (leftValue < 0) { toolbarInfo.style.left = 0; } else { toolbarInfo.style.right = '0px'; } }; } renderAjaxRequests(); addEventListener(document.querySelector('.sf-toolbar-ajax-clear'), 'click', function() { requestStack = []; renderAjaxRequests(); successStreak = 4; document.querySelector('.sf-toolbar-ajax-request-list').innerHTML = ''; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax'), 'mouseenter', function (event) { var elem = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); elem.scrollTop = elem.scrollHeight; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax > .sf-toolbar-icon'), 'click', function (event) { event.preventDefault(); toggleClass(this.parentNode, 'hover'); }); var dumpInfo = document.querySelector('.sf-toolbar-block-dump .sf-toolbar-info'); if (null !== dumpInfo) { addEventListener(dumpInfo, 'sfbeforedumpcollapse', function () { dumpInfo.style.minHeight = dumpInfo.getBoundingClientRect().height+'px'; }); addEventListener(dumpInfo, 'mouseleave', function () { dumpInfo.style.minHeight = ''; }); } }, function(xhr) { if (xhr.status !== 0 && !options.stop) { var sfwdt = that.getSfwdt(token); sfwdt.innerHTML = '\ <div class="sf-toolbarreset notranslate">\ <div class="sf-toolbar-icon"><svg width="26" height="28" xmlns="http://www.w3.org/2000/svg" version="1.1" x="0px" y="0px" viewBox="0 0 26 28" enable-background="new 0 0 26 28" xml:space="preserve"><path fill="#FFFFFF" d="M13 0C5.8 0 0 5.8 0 13c0 7.2 5.8 13 13 13c7.2 0 13-5.8 13-13C26 5.8 20.2 0 13 0z M20 7.5 c-0.6 0-1-0.3-1-0.9c0-0.2 0-0.4 0.2-0.6c0.1-0.3 0.2-0.3 0.2-0.4c0-0.3-0.5-0.4-0.7-0.4c-2 0.1-2.5 2.7-2.9 4.8l-0.2 1.1 c1.1 0.2 1.9 0 2.4-0.3c0.6-0.4-0.2-0.8-0.1-1.3C18 9.2 18.4 9 18.7 8.9c0.5 0 0.8 0.5 0.8 1c0 0.8-1.1 2-3.3 1.9 c-0.3 0-0.5 0-0.7-0.1L15 14.1c-0.4 1.7-0.9 4.1-2.6 6.2c-1.5 1.8-3.1 2.1-3.8 2.1c-1.3 0-2.1-0.6-2.2-1.6c0-0.9 0.8-1.4 1.3-1.4 c0.7 0 1.2 0.5 1.2 1.1c0 0.5-0.2 0.6-0.4 0.7c-0.1 0.1-0.3 0.2-0.3 0.4c0 0.1 0.1 0.3 0.4 0.3c0.5 0 0.9-0.3 1.2-0.5 c1.3-1 1.7-2.9 2.4-6.2l0.1-0.8c0.2-1.1 0.5-2.3 0.8-3.5c-0.9-0.7-1.4-1.5-2.6-1.8c-0.8-0.2-1.3 0-1.7 0.4C8.4 10 8.6 10.7 9 11.1 l0.7 0.7c0.8 0.9 1.3 1.7 1.1 2.7c-0.3 1.6-2.1 2.8-4.3 2.1c-1.9-0.6-2.2-1.9-2-2.7c0.2-0.6 0.7-0.8 1.2-0.6 c0.5 0.2 0.7 0.8 0.6 1.3c0 0.1 0 0.1-0.1 0.3C6 15 5.9 15.2 5.9 15.3c-0.1 0.4 0.4 0.7 0.8 0.8c0.8 0.3 1.7-0.2 1.9-0.9 c0.2-0.6-0.2-1.1-0.4-1.2l-0.8-0.9c-0.4-0.4-1.2-1.5-0.8-2.8c0.2-0.5 0.5-1 0.9-1.4c1-0.7 2-0.8 3-0.6c1.3 0.4 1.9 1.2 2.8 1.9 c0.5-1.3 1.1-2.6 2-3.8c0.9-1 2-1.7 3.3-1.8C20 4.8 21 5.4 21 6.3C21 6.7 20.8 7.5 20 7.5z"/></svg></div>\ An error occurred while loading the web debug toolbar. <a href="http\u003A\/\/www.staging.startplatz.de\/_profiler\/' + newToken + '">Open the web profiler.</a>\ </div>\ '; sfwdt.parentElement.setAttribute('class', 'sf-toolbar sf-error-toolbar'); } }, options ); return this; }, toggle: function(selector, elOn, elOff) { var tmp = elOn.style.display, el = document.getElementById(selector); elOn.style.display = elOff.style.display; elOff.style.display = tmp; if (el) { el.style.display = 'none' === tmp ? 'none' : 'block'; } return this; }, }; })(); } Sfjs.loadToolbar('130755'); /*]]>*/</script></div><!-- END of Symfony Web Debug Toolbar -->\n
</body>\n
</html>\n
"""
#version: "1.1"
#statusCode: 200
#statusText: "OK"
#charset: "UTF-8"
-sentHeaders: ? array
} |