CINXE.COM

DjangoCon Africa 2025

<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>DjangoCon Africa 2025</title> <script src="https://unpkg.com/htmx.org@1.9.11" integrity="sha384-0gxUXCCR8yv9FM2b+U3FDbsKthCI66oH5IA9fHppQq9DDMHuMauqq1ZHBpJxQ0J0" crossorigin="anonymous"></script> <script src="//unpkg.com/alpinejs" defer></script> <link rel="stylesheet" type="text/css" href="/static/src/tailwind_final.487d451d4141.css"> <script src="/static/src/font_awesome_5.cee44411aa62.js" crossorigin="anonymous"></script> <link href="/static/images/icon.cb246bedd5b7.png" rel="shortcut icon"> </head> <body hx-headers='{"X-CSRFToken": "DCsaB3WhfT2cM1Cx0jV812hj4vSzOjHf8uv28n7ufyzPUuvminGBh23mGZmV2mc7"}'> <header class="w-full bg-deepTeal border-b-white/10 text-white sticky top-0 z-50 border-b"> <div class="dj-container flex h-16 items-center justify-between"> <a href="/"> <img src="/static/images/logo.7d864666cf7a.svg" alt="logo" class="w-[150px]" /> </a> <nav class="hidden lg:flex items-center gap-x-5"> <div class="relative group"> <div x-data="{ open: false }" class="relative inline-block"> <div class="py-3 flex items-center hover:border-b-2 hover:border-white "> <button @click="open = !open" @click.outside="open = false" class="flex items-center gap-x-1 py-2 "> <span class="text-base">Conference</span> <i class="fas fa-chevron-down transition-transform opacity-30 duration-200" :class="{ 'rotate-180': open }"></i> </button> </div> <div x-show="open" class="absolute left-0 mt-1 w-fit rounded-md shadow-2xl ring-1 ring-black ring-opacity-5 bg-white" style="display: none;"> <div class="py-1" role="menu"> <a href="/coc" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Code of Conduct </a> </div> </div> </div> </div> <div class="relative group"> <div x-data="{ open: false }" class="relative inline-block"> <div class="py-3 flex items-center hover:border-b-2 hover:border-white "> <button @click="open = !open" @click.outside="open = false" class="flex items-center gap-x-1 py-2 "> <span class="text-base">Resources</span> <i class="fas fa-chevron-down transition-transform opacity-30 duration-200" :class="{ 'rotate-180': open }"></i> </button> </div> <div x-show="open" class="absolute left-0 mt-1 w-fit rounded-md shadow-2xl ring-1 ring-black ring-opacity-5 bg-white" style="display: none;"> <div class="py-1" role="menu"> <a href="/news" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> News </a> <a href="/opportunity_grants" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Opportunity Grants </a> </div> </div> </div> </div> <div class="relative group"> <div x-data="{ open: false }" class="relative inline-block"> <div class="py-3 flex items-center hover:border-b-2 hover:border-white "> <button @click="open = !open" @click.outside="open = false" class="flex items-center gap-x-1 py-2 "> <span class="text-base">Speaking</span> <i class="fas fa-chevron-down transition-transform opacity-30 duration-200" :class="{ 'rotate-180': open }"></i> </button> </div> <div x-show="open" class="absolute left-0 mt-1 w-fit rounded-md shadow-2xl ring-1 ring-black ring-opacity-5 bg-white" style="display: none;"> <div class="py-1" role="menu"> <a href="/speaking" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Speaking at Djangocon Africa </a> <a href="/speaker_resources" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Speaker Resources </a> <a href="https://pretalx.com/djangocon-africa-2025/cfp" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Call for Proposals </a> </div> </div> </div> </div> <div class="relative group"> <div x-data="{ open: false }" class="relative inline-block"> <div class="py-3 flex items-center hover:border-b-2 hover:border-white "> <button @click="open = !open" @click.outside="open = false" class="flex items-center gap-x-1 py-2 "> <span class="text-base">Sponsors</span> <i class="fas fa-chevron-down transition-transform opacity-30 duration-200" :class="{ 'rotate-180': open }"></i> </button> </div> <div x-show="open" class="absolute left-0 mt-1 w-fit rounded-md shadow-2xl ring-1 ring-black ring-opacity-5 bg-white" style="display: none;"> <div class="py-1" role="menu"> <a href="/sponsor_us" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Become a Sponsor </a> <a href="/sponsors" class="block px-4 py-3 text-nowrap text-black hover:bg-gray-100"> Our Sponsors </a> </div> </div> </div> </div> </nav> <div class="flex items-center gap-x-2"> <div class="relative" x-data="{ open: false }"> <button @click="open = !open" @click.outside="open = false" class="flex items-center justify-center size-10 rounded-full text-white hover:text-gray-200 border-white/10 border transition-colors" > <span>🇬🇧</span> </button> <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 mt-2 py-2 w-48 bg-white rounded-md shadow-xl z-50" style="display: none" > <div class="py-1" role="menu" aria-orientation="vertical"> <form action="/set_language/" method="post" class="inline"> <input type="hidden" name="csrfmiddlewaretoken" value="DCsaB3WhfT2cM1Cx0jV812hj4vSzOjHf8uv28n7ufyzPUuvminGBh23mGZmV2mc7"> <input type="hidden" name="next" value="/" /> <button type="submit" name="language" value="en" class="w-full text-left flex justify-between px-4 py-2 text-black hover:bg-gray-100" :class="{ 'bg-gray-100': 'en' === 'en' }" role="menuitem" > English <i class="fas fa-check opacity-30"></i> </button> </form> <form action="/set_language/" method="post" class="inline"> <input type="hidden" name="csrfmiddlewaretoken" value="DCsaB3WhfT2cM1Cx0jV812hj4vSzOjHf8uv28n7ufyzPUuvminGBh23mGZmV2mc7"> <input type="hidden" name="next" value="/" /> <button type="submit" name="language" value="fr" class="w-full text-left flex justify-between px-4 py-2 text-black hover:bg-gray-100" :class="{ 'bg-gray-100': 'en' === 'fr' }" role="menuitem" > French </button> </form> </div> </div> </div> <button x-data @click="$dispatch('toggle-mobile-menu')" class="lg:hidden flex items-center justify-center size-10 rounded-full text-white border-white/10 border transition-colors" > <i class="fas fa-bars"></i> <span class="sr-only">Toggle Menu</span> </button> </div> </div> <div x-data="{ isOpen: false }" @toggle-mobile-menu.window="isOpen = !isOpen" x-show="isOpen" class="fixed inset-0 z-50 flex flex-col bg-white text-black lg:hidden" x-effect="isOpen ? document.body.style.overflow = 'hidden' : document.body.style.overflow = 'auto'" style="display: none;"> <div class="border-b"> <div class="dj-container flex h-16 items-center justify-between"> <a href="/"> <img src="/static/images/logo-black.5fcfcffbbe8b.svg" alt="logo" class="w-[150px]" /> </a> <div class="flex items-center gap-x-2"> <div class="relative" x-data="{ open: false }"> <button @click="open = !open" @click.outside="open = false" class="flex items-center justify-center size-10 rounded-full text-black hover:text-gray-700 border-black/10 border transition-colors" > <span>🇬🇧</span> </button> <div x-show="open" x-transition:enter="transition ease-out duration-100" x-transition:enter-start="transform opacity-0 scale-95" x-transition:enter-end="transform opacity-100 scale-100" x-transition:leave="transition ease-in duration-75" x-transition:leave-start="transform opacity-100 scale-100" x-transition:leave-end="transform opacity-0 scale-95" class="absolute right-0 mt-2 py-2 w-48 bg-gray-50 border border-gray-200 rounded-md shadow-xl z-50" style="display: none" > <div class="py-1" role="menu" aria-orientation="vertical"> <form action="/set_language/" method="post" class="inline"> <input type="hidden" name="csrfmiddlewaretoken" value="DCsaB3WhfT2cM1Cx0jV812hj4vSzOjHf8uv28n7ufyzPUuvminGBh23mGZmV2mc7"> <input type="hidden" name="next" value="/" /> <button type="submit" name="language" value="en" class="w-full text-left flex justify-between px-4 py-2 text-black hover:bg-gray-100" :class="{ 'bg-gray-100': 'en' === 'en' }" role="menuitem" > English <i class="fas fa-check opacity-30"></i> </button> </form> <form action="/set_language/" method="post" class="inline"> <input type="hidden" name="csrfmiddlewaretoken" value="DCsaB3WhfT2cM1Cx0jV812hj4vSzOjHf8uv28n7ufyzPUuvminGBh23mGZmV2mc7"> <input type="hidden" name="next" value="/" /> <button type="submit" name="language" value="fr" class="w-full text-left flex justify-between px-4 py-2 text-black hover:bg-gray-100" :class="{ 'bg-gray-100': 'en' === 'fr' }" role="menuitem" > French </button> </form> </div> </div> </div> <button @click="isOpen = false" class="flex items-center justify-center size-10 rounded-full border"> <i class="fas fa-times"></i> </button> </div> </div> </div> <div class="h-[calc(100vh-64px)] overflow-y-auto"> <nav> <div x-data="{ dropdownOpen: false }"> <button @click="dropdownOpen = !dropdownOpen" class="flex items-center justify-between w-full py-4 px-4 sm:px-6 text-left hover:bg-gray-100"> <span class="text-4xl">Conference</span> <i class="fas fa-chevron-down text-black/30 transition-transform duration-200 mr-2" :class="{ 'rotate-180': dropdownOpen }"></i> </button> <div x-show="dropdownOpen" class="px-4 sm:px-6" style="display: none;"> <a href="/coc" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Code of Conduct </a> </div> </div> <div x-data="{ dropdownOpen: false }"> <button @click="dropdownOpen = !dropdownOpen" class="flex items-center justify-between w-full py-4 px-4 sm:px-6 text-left hover:bg-gray-100"> <span class="text-4xl">Resources</span> <i class="fas fa-chevron-down text-black/30 transition-transform duration-200 mr-2" :class="{ 'rotate-180': dropdownOpen }"></i> </button> <div x-show="dropdownOpen" class="px-4 sm:px-6" style="display: none;"> <a href="/news" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> News </a> <a href="/opportunity_grants" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Opportunity Grants </a> </div> </div> <div x-data="{ dropdownOpen: false }"> <button @click="dropdownOpen = !dropdownOpen" class="flex items-center justify-between w-full py-4 px-4 sm:px-6 text-left hover:bg-gray-100"> <span class="text-4xl">Speaking</span> <i class="fas fa-chevron-down text-black/30 transition-transform duration-200 mr-2" :class="{ 'rotate-180': dropdownOpen }"></i> </button> <div x-show="dropdownOpen" class="px-4 sm:px-6" style="display: none;"> <a href="/speaking" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Speaking at Djangocon Africa </a> <a href="/speaker_resources" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Speaker Resources </a> <a href="https://pretalx.com/djangocon-africa-2025/cfp" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Call for Proposals </a> </div> </div> <div x-data="{ dropdownOpen: false }"> <button @click="dropdownOpen = !dropdownOpen" class="flex items-center justify-between w-full py-4 px-4 sm:px-6 text-left hover:bg-gray-100"> <span class="text-4xl">Sponsors</span> <i class="fas fa-chevron-down text-black/30 transition-transform duration-200 mr-2" :class="{ 'rotate-180': dropdownOpen }"></i> </button> <div x-show="dropdownOpen" class="px-4 sm:px-6" style="display: none;"> <a href="/sponsor_us" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Become a Sponsor </a> <a href="/sponsors" class="block py-3 border-b text-lg text-black text-opacity-80 hover:text-gray-900"> Our Sponsors </a> </div> </div> </nav> </div> </div> </header> <main> <main class="bg-white"> <section class="bg-deepTeal pt-20 md:pt-[104px] pb-8 md:pb-12 bg-dotted-world-map bg-no-repeat bg-cover" > <div class="dj-container text-center"> <h1 class="mb-6 text-white"> DJANGOCON <br /> AFRICA 2025 </h1> <p class="text-[20px] leading-8 md:max-w-2xl mx-auto text-white"> Join us for 5 days of inspiration, education and networking at DjangoCon Africa from 11 - 15 August, 2025 in <a href="https://maps.app.goo.gl/TqQ9QLonUdRcdnXg8" target="_blank" class="underline" >Arusha, Tanzania</a > </p> </div> </section> <section class="relative"> <div class="absolute top-0 left-0 w-full h-1/2 bg-deepTeal"></div> <div class="absolute top-1/2 left-0 w-full h-1/2 bg-white"></div> <div class="dj-container"> <div class="relative overflow-hidden rounded-lg pt-[56.25%] z-10"> <iframe class="absolute top-0 left-0 w-full h-full" src="https://www.youtube.com/embed/ohTNwfVmx0A?autoplay=1" title="DjangoCon Africa 2025 Preview" frameborder="0" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen ></iframe> </div> </div> </section> <section class="bg-white mb-16 md:mb-10"> <div class="dj-container flex gap-x-8 md:gap-x-12 gap-y-6 flex-col md:flex-row mt-5 items-center" > <div class="md:w-1/2 m-auto md:pt-[30px] md:pb-5"> <h2 class="mb-4">First DjangoCon Africa</h2> <p class="mb-4"> In 2023 we hosted the first ever DjangoCon Africa. DjangoCon Africa took place in Zanzibar, Tanzania 6th-11th November 2023. <br /><br /> We had roughly 200 attendees, of whom 103 were women. The attendees represented at least 22 countries from around the world. <br /><br /> We held 26 talks on topics covering programming, society, careers, education, disability, agriculture - the full range of topics you’d expect at a DjangoCon, with the African perspective often at the forefront. </p> <a href="https://2023.djangocon.africa/news/report/" target="_blank" class="bg-deepTeal text-white rounded-full h-[50px] w-fit px-6 flex items-center justify-center gap-x-1 hover:bg-deepTeal/90" > Read the 2023 report <i class="fas fa-chevron-right"></i> </a> </div> <div class="md:w-1/2"> <img src="/static/images/first-djangocon-africa.51e39596f8a3.png" alt="DjangoCon Africa 2023" class="w-full h-auto object-cover rounded-2xl" /> </div> </div> </section> <section class="dj-container pb-10"> <h2 class="md:max-w-[447px] mb-4 md:mb-8"> What will be happening at DjangoCon Africa </h2> <div class="grid md:grid-cols-2 lg:grid-cols-3"> <div class="border pb-6 md:pt-6 md:px-6 border-x-0 md:border-x-[1px] border-t-0 md:border-t-[1px]" > <h3 class="mb-4">💬 Talks</h3> <p> Three days of talks, on programming, technology, careers, society and business, with speakers from across the world. </p> </div> <div class="border py-6 md:px-6 border-x-0 md:border-x-[1px] -mt-[1px] -ml-[1px]" > <h3 class="mb-4">🖥️ Workshops and tutorials</h3> <p> Hands-on training and learning sessions, led by experts in the field. Details to be published soon. </p> </div> <div class="border py-6 md:px-6 border-x-0 md:border-x-[1px] -mt-[1px] -ml-[1px]" > <h3 class="mb-4">🤝 Collaboration</h3> <p> Work together on code, and contribute to major projects - including Django itself. </p> </div> <div class="border py-6 md:px-6 border-x-0 md:border-x-[1px] -mt-[1px] -ml-[1px]" > <h3 class="mb-4">👩‍💻 Django Girls</h3> <p> A training workshop aimed at women, providing an introduction to web application development. Tens of thousands of women across the world have had their introduction to Django through this hugely successful programme. </p> </div> <div class="border pt-6 pb-6 md:px-6 border-x-0 md:border-x-[1px] border-b-0 md:border-b-[1px] -mt-[1px] -ml-[1px]" > <h3 class="mb-4">🔎 Discovery</h3> <p> DjangoCon Africa is an opportunity to discover places and people as well as technology. It will bring together participants from across Africa and the rest of the world, for mutual understanding of contexts, challenges and opportunities. </p> </div> </div> </section> <section class="py-10"> <div class="dj-container"> <h2 class="mb-4">Sponsors</h2> <p class="mb-4 md:max-w-xl"> DjangoCon Africa is made possible by the generous sponsorships of various teams and organisations around the world. </p> <a href="/cdn-cgi/l/email-protection#9eedeef1f0edf1ecdefaf4fff0f9f1fdf1f0b0fff8ecf7fdffa1edebfcf4fbfdeaa3cdeef1f0edf1ecbedaf4fff0f9f1ddf1f0bedff8ecf7fdffbeacaeacab" class="bg-deepTeal text-white rounded-full h-[50px] w-fit px-6 flex items-center justify-center gap-x-1 hover:bg-deepTeal/90"> Sponsor us <i class="fas fa-chevron-right"></i> </a> <div class="flex flex-col md:flex-row gap-x-24 gap-y-12 mt-9 md:mt-12"> <div> <h3 class="mb-3">🪪 Lanyard sponsor</h3> <a href="https://www.caktusgroup.com/" target="_blank" class="inline-block" > <img src="/media/sponsors_files/caktus.png" alt="Caktus logo" class="size-[136px] aspect-square" /> </a> </div> <div> <h3 class="mb-3">🌍 Hosting sponsor</h3> <a href="https://pythonanywhere.com/" target="_blank" class="inline-block" > <img src="/media/sponsors_files/pythonanywhere.png" alt="PythonAnywhere logo" class="size-[136px] aspect-square" /> </a> </div> <div> <h3 class="mb-3">📣 Social Media sponsor</h3> <a href="https://typefully.com/" target="_blank" class="inline-block" > <img src="/media/sponsors_files/typefully.png" alt="Typefully logo" class="size-[136px] aspect-square" /> </a> </div> </div> </div> </section> <section class="dj-container pt-20"> <div class="md:max-w-xl"> <h2 class="mb-6">Latest news</h2> <div class="flex w-full"> <div class="flex-1"> <a href="/en/news/introducing-djangocon-africa-2025/"> <div class="border-b pb-6 md:border md:p-6"> <h3 class="mb-3">Introducing DjangoCon Africa 🌍 2025 🎉</h3> <p class="mb-6"> The African Django community is excited to announce the second DjangoCon Africa event, taking... </p> <p>March 8, 2025 • By Team</p> </div> </a> </div> </div> </div> </section> </main> </main> <footer> <img src="/static/images/footer/desktop-footer.8463986f4c14.png" alt="footer-bg" class="w-full" /> <div class="bg-[#313114] text-white text-center pb-12"> <div class="dj-container flex flex-col items-center gap-y-6"> <img src="/static/images/footer-logo.1bc5615ce7c3.svg" alt="logo" /> <div class="flex gap-x-4"> <a target="_blank" href="https://github.com/djangocon"><img src="/static/icons/github-icon.03b355addf83.svg" alt="github icon" class="size-[44px]"/></a> <a target="_blank" href="https://mastodon.social/@djangoconafrica@fosstodon.org"><img src="/static/icons/mastodon-icon.d32d3525790d.svg" alt="mastodon icon" class="size-[44px]"/></a> <a target="_blank" href="https://bsky.app/profile/djcafrica.bsky.social"><img src="/static/icons/bluesky-icon.5d6dda2f02dc.svg" alt="bluesky icon" class="size-[44px]"/></a> <a target="_blank" href="https://x.com/djcafrica"><img src="/static/icons/x-icon.88d94c22c85c.svg" alt="x icon" class="size-[44px]"/></a> <a target="_blank" href="https://facebook.com/djcafrica"><img src="/static/icons/facebook-icon.a219cc9814f4.svg" alt="facebook icon" class="size-[44px]"/></a> <a target="_blank" href="https://linkedin.com/company/djcafrica"><img src="/static/icons/linkedin-icon.8385a22c8349.svg" alt="linkedin icon" class="size-[44px]"/></a> <a href="/cdn-cgi/l/email-protection#4a222f2626250a2e202b242d25292524642b2c3823292b"><img src="/static/icons/email-icon.93cf5200fcee.svg" alt="email icon" class="size-[44px]"/></a> </div> <p>Website designed by <a href="https://www.linkedin.com/in/hopeadoli" target="_blank" class="underline cursor-pointer">Hope Adoli</a> and built with <span class="text-red-800">❤</span> by <a class="underline cursor-pointer" href="/">the community</a></p> <p>Other Django Events: <a class="underline cursor-pointer" href="https://djangocon.us" target="_blank">DjangoCon US</a> • <a class="underline cursor-pointer" href="https://djangocon.eu" target="_blank">DjangoCon Europe</a> • <a class="underline cursor-pointer" href="https://djangocon.com.au" target="_blank">DjangoCon Australia</a></p> <p>Our <a class="underline cursor-pointer" href="/coc">Code of Conduct</a></p> </div> </div> </footer> <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10