CINXE.COM
SymfonyCasts - PHP and Symfony Video Tutorial Screencasts
<!DOCTYPE html> <html lang="en" class="scroll-smooth"> <head prefix="og: http://ogp.me/ns#"> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="PHP and Symfony Tutorial Screencasts - with free videos, scripts, and code downloads!"> <meta property="og:image" content="https://symfonycasts.com/build/images/og-sfcasts.89bb7107.png"> <title>SymfonyCasts - PHP and Symfony Video Tutorial Screencasts</title> <link rel="stylesheet" href="https://symfonycasts.com/build/150.899c05e4.css" data-turbo-track="reload"><link rel="stylesheet" href="https://symfonycasts.com/build/tailwind.945ec199.css" data-turbo-track="reload"> <link rel="preconnect" href="https://kit.fontawesome.com"> <link rel="preconnect" href="https://api.fontshare.com"> <link rel="stylesheet" href="https://kit.fontawesome.com/f44096511e.css" crossorigin="anonymous"> <script async defer src="https://sa.symfonycasts.com/latest.js"></script> <script src="https://symfonycasts.com/build/runtime.a477f750.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/8764.79cb6dbe.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/7658.310a38b9.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/4987.fd46174f.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/4184.4446a197.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/2624.eedc0a93.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/969.cbfbbb6b.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/4430.b8f58b3a.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/4079.812ac5c4.js" defer data-turbo-track="reload"></script><script src="https://symfonycasts.com/build/tailwind.455d4657.js" defer data-turbo-track="reload"></script> </head> <body class="min-h-screen bg-white text-black-8 dark:text-white dark:bg-black-9" data-user-id="" > <header data-controller="mobile-menu" class="border-b border-black-2 dark:border-black-8 dark:bg-black-9"> <section class="max-w-screen-2xl mx-auto py-3 px-5 flex justify-between items-center"> <div class="flex grow"> <button data-action="mobile-menu#toggle:prevent" class="md:hidden cursor-pointer relative w-4 h-6 mt-2.5 mr-3"> <div class="bg-black-9 dark:bg-white w-4 h-0.5 rounded absolute top-4 -mt-0.5 transition-all duration-500 before:content-[''] before:bg-black-9 before:dark:bg-white before:w-4 before:h-0.5 before:rounded before:absolute before:transition-all before:duration-500 before:-translate-x-2 before:translate-y-2 after:content-[''] after:bg-black-9 after:dark:bg-white after:w-4 after:h-0.5 after:rounded after:absolute after:transition-all after:duration-500 after:-translate-x-2 after:-translate-y-2"></div> </button> <a href="/" class="text-3xl font-medium"> <div class="bg-[url('../images/symfonycasts-logo-dm.svg')] w-[52px] h-[45px] bg-cover bg-no-repeat min-[1099px]:bg-[url('../images/symfonycasts-logo.svg')] min-[1099px]:dark:bg-[url('../images/symfonycasts-logo-dm.svg')] min-[1099px]:w-[240px] min-[1099px]:bg-contain mr-5" alt="SymfonyCasts Logo"></div> </a> <span class="hidden md:flex md:grow items-center"> <form action="/search" data-controller="rich-search" role="search" aria-expanded="false" class="group w-[228px] aria-expanded:w-full transition-all relative" > <div class="relative"> <div class="absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"> <svg aria-hidden="true" class="w-5 h-5 text-black-5" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z" clip-rule="evenodd"></path></svg> </div> <input data-rich-search-target="input" autocomplete="off" data-action="keydown.meta+k@window->rich-search#openByKey keydown.ctrl+k@window->rich-search#openByKey" value="" name="q" type="text" class="w-full focus:ring-0 focus:ring-offset-0 focus:outline-none group-aria-expanded:border group-aria-expanded:border-blue-6 bg-black-1 border dark:border-black-7 border-black-2 text-black-5 text-sm rounded-lg block pl-10 p-2 dark:bg-black-7 dark:placeholder-black-5 dark:text-white" placeholder="Search Tutorials" spellcheck="false" aria-label="search" > </div> </form> </span> </div> <div class="font-semibold"> <nav class="space-x-1.5 sm:space-x-2 min-[812px]:space-x-3 xl:space-x-5" aria-label="main"> <div class="inline-block md:hidden" data-controller="dropdown" data-dropdown-offset-value="40" data-dropdown-placement-value="bottom" data-dropdown-close-on-click-inside-value="false" data-dropdown-use-overlay-value="true" > <button data-action="dropdown#toggle:prevent" type="button" class="py-1 px-2.5"> <span class="sr-only">Open Search Menu</span> <i class="fas fa-search fa-fw"></i> </button> <div class="absolute z-50 hidden w-auto bg-white rounded-lg shadow dark:bg-black-8 py-5 px-7 after:absolute after:content-[''] after:top-0 after:-translate-y-6 after:left-0 after:right-0 after:mx-auto after:border-[12px] after:w-4 after:border-b-white after:dark:border-b-black-8 after:border-transparent" data-dropdown-target="block" > <form action="/search" data-controller="rich-search" role="search" aria-expanded="false" class="group w-[228px] aria-expanded:w-full transition-all relative" > <div class="relative"> <div class="absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"> <svg aria-hidden="true" class="w-5 h-5 text-black-5" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z" clip-rule="evenodd"></path></svg> </div> <input data-rich-search-target="input" autocomplete="off" data-action="" value="" name="q" type="text" class="w-full focus:ring-0 focus:ring-offset-0 focus:outline-none group-aria-expanded:border group-aria-expanded:border-blue-6 bg-black-1 border dark:border-black-7 border-black-2 text-black-5 text-sm rounded-lg block pl-10 p-2 dark:bg-black-7 dark:placeholder-black-5 dark:text-white" placeholder="Search Tutorials" spellcheck="false" aria-label="search" > </div> </form> <h4 class="pt-4 pb-3 text-sm text-black-4 font-normal">Popular Search Topics</h4> <ul class="list-none font-semibold text-lg gap-3"> <li> <a href="/search?q=API%20Platform"> API Platform </a> </li> <li> <a href="/search?q=Doctrine"> Doctrine </a> </li> <li> <a href="/search?q=Turbo"> Turbo </a> </li> <li> <a href="/search?q=EasyAdmin"> EasyAdmin </a> </li> </ul> </div> </div> <div class="hidden md:inline-block" data-controller="dropdown" data-dropdown-offset-value="20" data-dropdown-placement-value="bottom" data-dropdown-close-on-click-inside-value="true" data-dropdown-use-overlay-value="false" > <a href="/courses" class="hover:text-blue-6">Tutorials</a> <button data-action="dropdown#toggle:prevent" type="button" class=""> <i class="fa-regular fa-ellipsis pl-1 hover:text-blue-6"></i> </button> <div class="z-50 absolute hidden w-auto bg-white divide-gray-100 rounded-lg shadow dark:bg-gray-700 dark:divide-gray-600 py-5 px-7" data-dropdown-target="block" > <a href="/courses" class="hover:text-blue-6"><span class="text-lg font-semibold underline">View all Courses</span> <span class="font-sm font-normal">(123)</span></a> <div class="grid grid-cols-2"> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #06E7FC"></i>Symfony 7</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony6"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #6B02F7"></i>Symfony 6</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony5"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #A6F124"></i>Symfony 5</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/rest"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #7BE89B"></i>APIs</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/js-tools"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #ED268F"></i>JavaScript Frameworks & Tools</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/javascript"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #ED268F"></i>JavaScript Fundamentals</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/testing"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #E7E517"></i>Testing</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/drupal"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #AF04F6"></i>Drupal 8</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/oo"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #3502ED"></i>OOP</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/php"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #07DBDE"></i>PHP</a> </div> <div class="py-[6px] px-[6px] font-normal"> <a class="hover:text-blue-6" href="/tracks/extras"><i class="fa-solid fa-circle-small pr-3 text-[10px]" style="color: #E645CD"></i>Dev Tools</a> </div> </div> </div> </div> <a href="/gift-card/" class="hover:text-blue-6 hidden lg:inline">Gift Card</a> <a class="hover:text-blue-6 hidden lg:inline" href="/pricing">Pricing</a> <span class="hidden lg:inline border-r border-black-3 dark:border-black-6"></span> <div class="inline-block" data-controller="dropdown" data-dropdown-offset-value="40" data-dropdown-placement-value="bottom" data-dropdown-close-on-click-inside-value="true" data-dropdown-use-overlay-value="false" > <button data-action="dropdown#toggle:prevent" type="button" class="test-notifications-bell rounded-full py-1 px-2.5 hover:bg-black-1 hover:dark:bg-black-7 active:dark:bg-blue-8 active:dark:text-blue-5 active:bg-blue-1 active:text-blue-6"> <i class="fa fa-bell fa-fw relative"> <div class="bg-red-500 border-2 border-white dark:border-black-8 rounded-full h-[10px] w-[10px] absolute right-[-2px] top-[-2px]"></div> </i> </button> <div class="z-50 absolute h-[580px] overflow-y-scroll hidden md:2w-[530px] bg-white divide-y divide-gray-100 rounded-lg shadow dark:bg-gray-700 dark:divide-gray-600 py-5 px-7 after:absolute after:content-[''] after:top-0 after:-translate-y-6 after:right-5 after:border-[12px] after:w-4 after:border-b-white after:dark:border-b-gray-700 after:border-transparent" data-dropdown-target="block" > <div class="flex justify-between"> <span class="text-lg font-semibold pb-4">Notifications</span> </div> <div class="flex pt-7"> <turbo-frame id="user-notifications-page1" src="/updates" loading="lazy" target="_top"> Loading more entries <i class="fa fa-spinner fa-spin"></i> </turbo-frame> </div> </div> </div> <a href="#" class="nav-link py-1 px-2.5 hover:text-blue-6" data-controller="dark-mode-toggle" data-dark-mode-toggle-url-value="/api/set-dark-mode" data-dark-mode-toggle-class-name-value="dark" data-action="dark-mode-toggle#toggle:prevent" ><i class="fa fa-adjust fa-fw"></i></a> <span class="whitespace-nowrap"> <a class="btn-secondary-sm mr-2 whitespace-nowrap hidden md:inline-block" href="/login">Log In</a> </span> </nav> </div> </section> <section data-mobile-menu-target="menu" class="absolute top-68 z-40 border-b border-black-2 dark:border-black-7 bg-white dark:bg-black-8 w-full text-2xl flex-col origin-top animate-open-menu hidden"> <nav class="flex flex-col justify-between min-h-screen py-8" aria-label="mobile"> <div class="flex flex-col gap-2.5 p-0"> <div data-controller="toggle" data-toggle-button-toggle-classes-value="fa-angle-down fa-angle-up" data-toggle-hidden-classes-value="h-0 py-0" data-toggle-shown-classes-value="py-5" data-toggle-transition-height-value="true" > <div class="flex justify-between px-5"> <a href="/courses" class="hover:text-blue-6"> Tutorials </a> <button data-action="toggle#toggle:prevent"> <i class="fa-regular fa-angle-down pl-2 hover:text-blue-6"></i> </button> </div> <div class="bg-black-1 dark:bg-black-7 px-5 py-5 hidden overflow-hidden transition-all duration-500" data-toggle-target="content"> <span class="text-xs font-medium">Tracks (11)</span> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Symfony 7</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony6"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Symfony 6</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/symfony5"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Symfony 5</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/rest"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>APIs</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/js-tools"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>JavaScript Frameworks & Tools</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/javascript"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>JavaScript Fundamentals</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/testing"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Testing</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/drupal"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Drupal 8</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/oo"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>OOP</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/php"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>PHP</a> </div> <div class="py-[6px] px-[6px] text-base font-normal"> <a class="hover:text-blue-6" href="/tracks/extras"><i class="fa-solid fa-circle-small pr-3 text-[10px]"></i>Dev Tools</a> </div> <a href="/courses" class="hover:text-blue-6"><span class="text-lg font-semibold underline">View all Courses</span> <span class="text-xs font-normal">(123)</span></a> </div> </div> <a href="/gift-card/" class="hover:text-blue-6 px-5"> Gift Card </a> <a class="hover:text-blue-6 px-5" href="/pricing">Pricing</a> </div> <div class="flex flex-col px-3"> <a class="btn-secondary-sm text-center" href="/login">Log In</a> <a class="btn-blue-sm text-center mt-2.5" href="/signup">Sign Up</a> </div> </nav> </section> </header> <main class="mx-auto"><div class="bg-[url('../images/mobile-space-cat.png')] min-[594px]:hidden xl:block -z-10 w-full bg-right-bottom h-52 bg-cover bg-no-repeat xl:absolute xl:top-[69px] xl:right-0 xl:w-[475px] xl:h-[422px] xl:bg-contain xl:bg-[url('../images/astrokitty.png')]"></div> <div class="mt-16 text-center grid grid-cols-1 w-full md:w-[452px] mx-auto relative"> <form name="registration_form" method="post" id="registration-form" data-controller="recaptcha"> <h1 class="mb-8 text-3xl font-semibold">Let's get you started</h1> <div class="px-2 md:px-0"> <div class="md:flex mb-3"> <div class=" mb-3 md:mb-0"> <label for="registration_form_firstName" class="sr-only">First Name</label> <input type="text" name="registration_form[firstName]" value="" class="dark:bg-black-7 dark:border-black-6 rounded-xl w-full md:w-[220px] p-4 " placeholder="First Name*" id="registration_form_firstName" /> </div> <div> <label for="registration_form_lastName" class="sr-only">Last Name</label> <input type="text" name="registration_form[lastName]" value="" class="dark:bg-black-7 dark:border-black-6 rounded-xl w-full md:w-[220px] p-4 md:ml-3" placeholder="Last Name (optional)" id="registration_form_lastName" /> </div> </div> <div class=""> <label class="sr-only" title="We collect your email address to allow you to access your account and to contact you about changes to your account." for=registration_form_email>Email Address</label> <input type="email" name="registration_form[email]" value="" class="dark:bg-black-7 dark:border-black-6 rounded-xl p-4 w-full " placeholder="Email*" id="registration_form_email" /> </div> <div class=""> <label class="sr-only" for=registration_form_plainPassword>Password</label> <input type="password" name="registration_form[plainPassword]" value="" class="dark:bg-black-7 dark:border-black-6 mt-3 rounded-xl p-4 w-full " placeholder="Password*" id="registration_form_plainPassword" /> </div> <div> <p class="text-sm text-left mb-5 mt-4"> SymfonyCasts will use your email address to communicate with you on transactions you complete on our platform. You may also receive emails about our courses if you opt-in to our newsletter or subscribe to tutorial updates. Check out our <a class="text-blue-5 underline" href="/privacy" target="_blank">privacy policy</a> for more information. </p> </div> <div class=" mb-3 text-left"> <div class="flex"> <input class="focus:ring-transparent mr-2 h-[22px] w-[22px] rounded border border-black-2 bg-black-1 dark:border-black-6 dark:bg-black-7" type="checkbox" id="registration_form_agreePrivacyTerms" name="registration_form[agreePrivacyTerms]" value="1" required="required" > <label for="registration_form_agreePrivacyTerms" class="form-check-label text-sm font-semibold"> I consent to the <a class="underline" href="/privacy" target="_blank">privacy policy</a> and <a class="underline" href="/terms" target="_blank">terms of service</a> </label> </div> <div class=""></div> </div> <div class=" mb-3 text-left"> <input class="focus:ring-transparent mr-2 h-[22px] w-[22px] rounded border border-black-2 bg-black-1 dark:border-black-6 dark:bg-black-7" type="checkbox" id="registration_form_check_new_courses" name="registration_form[check_new_courses]" value="1" > <label for="registration_form_check_new_courses" class="text-sm font-semibold"> Receive emails about new courses </label> <div class="pl-3"></div> </div> <input type="hidden" id="registration_form__token" name="registration_form[_token]" value="18f042a7607a5.zOhVEjrwRb2I4RbDkicz8-SZqRFBXMXSXMZ4IxkdlX8.jdxkWnOeKc3B02evwV5dsovgyEZ0JIG4M7coei9Ypwn5kSYkecAI-tCmeQ" /> <button class="btn-blue-lg my-6 w-full md:w-[452px] g-recaptcha" data-sitekey="6LcIN58UAAAAADC-cejs-LvlAZ7abMsSS8Oc3laZ" data-callback="onSubmitWithRecaptcha" > Register </button> </div> <p class="mb-5 overflow-hidden before:bg-black-3 dark:before:bg-black-6 before:content-[''] before:inline-block before:h-[1px] before:relative before:align-middle before:w-1/2 before:right-[0.5em] before:-ml-[50%] after:bg-black-3 dark:after:bg-black-6 after:content-[''] after:inline-block after:h-[1px] after:relative after:align-middle after:w-1/2 after:left-[0.5em] after:-mr-[50%] ">OR REGISTER WITH</p> <div class="flex justify-center text-3xl gap-4"> <a class="py-4 px-8 border border-black-3 dark:border-black-6 rounded-xl hover:bg-black-1 dark:hover:bg-black-7" title="Login with GitHub" href="/login/github"><span class="fab fa-github"></span></a> <a class="py-4 px-8 border border-black-3 dark:border-black-6 rounded-xl hover:bg-black-1 dark:hover:bg-black-7" title="Login with Facebook" href="/login/facebook"><i class="fab fa-facebook-f"></i></a> <a class="py-4 px-8 border border-black-3 dark:border-black-6 rounded-xl hover:bg-black-1 dark:hover:bg-black-7" title="Login with SymfonyConnect" href="/login/symfony"><span class="fab fa-symfony"></span></a> </div> </form> <p class="mt-16">Already have an account? <a class="text-blue-5 font-semibold underline" href="/login">Log in</a></p> </div> </main> <footer class="my-10 max-w-7xl mx-auto border-t border-black-2 dark:border-black-6 px-5"> <section class="flex flex-col md:flex-row md:justify-between mb-16 pt-11"> <div> <div class="bg-[url('../images/symfonycasts-logo-dm.svg')] w-[65px] h-[55px] bg-cover bg-no-repeat" alt="SymfonyCasts Logo"></div> <div class="text-[32px] font-semibold mt-4 mb-8 dark:text-white">Where learning is really fun.</div> <div class="text-xs min-[500px]:text-base flex"> <div><a href="/contact" class="btn-secondary-lg whitespace-nowrap">Get in touch<i class="fa-solid fa-envelope pl-2.5"></i></a></div> <div><a href="/pricing" class="btn-blue-lg ml-3 whitespace-nowrap">All Access Pass<i class="fa-solid fa-bolt-lightning pl-2.5"></i></a></div> </div> </div> <div class="flex flex-row mt-6 md:mt-0"> <div class="mr-16"> <ul class="text-[22px] font-semibold dark:text-white"> <li class="pb-3"><a href="/courses#all" class="hover:text-blue-6">Courses</a></li> <li class="pb-3"><a href="/courses#tracks" class="hover:text-blue-6">Tracks</a></li> <li class="pb-3"><a href="/pricing" class="hover:text-blue-6">Pricing</a></li> <li class="pb-3"><a href="/gift-card/" class="hover:text-blue-6">Gift Card</a></li> <li class="pb-3"><a href="/blog" class="hover:text-blue-6">Blog</a></li> </ul> </div> <div> <ul class="text-sm pt-2.5 dark:text-black-4"> <li class="pb-3"><a href="/faq" class="hover:text-blue-6">FAQ</a></li> <li class="pb-3"><a href="/faq" class="hover:text-blue-6">About</a></li> <li class="pb-3"><a href="/terms" class="hover:text-blue-6">Terms</a> <span>&</span> <a href="/privacy" class="hover:text-blue-6">Privacy</a></li> <li class="pb-3"><a href="/courses?status=upcoming&sort=popular#all" class="hover:text-blue-6">Roadmap</a></li> <li class="pb-3"><a href="/contact" class="hover:text-blue-6">Contact</a></li> </ul> </div> </div> </section> <section class="flex flex-col md:flex-row md:justify-between"> <div class="dark:text-white"> <a href="https://github.com/SymfonyCasts" class="hover:text-blue-6"><i class="fa-brands fa-github pr-8"></i></a> <a href="https://twitter.com/SymfonyCasts" class="hover:text-blue-6"><i class="fa-brands fa-x-twitter pr-8"></i></a> <a href="https://www.facebook.com/SymfonyCasts/" class="hover:text-blue-6"><i class="fa-brands fa-facebook-f pr-8"></i></a> <a href="https://www.linkedin.com/company/symfonycasts/" class="hover:text-blue-6"><i class="fa-brands fa-linkedin pr-8"></i></a> <span>Powered by <span class="text-blue-6">KnpUniversity</span></span> </div> <div> <p class="dark:text-black-4 mt-6 md:mt-0">Hosted with <i class="fa-solid fa-heart text-red-600"></i> on <a href="https://symfony.com/cloud/" class="underline hover:text-blue-6">platform.sh</a></p> </div> </section> </footer> </body> </html>