Content: Blog

Community news

My Journey as a django CMS Djangonaut Intern

Abdulwasiu Apalowo

June 24, 2025

My name is Abdulwasiu Apalowo, and since January 2025, I have been contributing to various projects under the django CMS organization as a Djangonaut Intern. This role follows my earlier involvement in the Djangonaut Space Program, which connects emerging contributors with mentorship opportunities in the Django ecosystem.

Restoring Green Builds Across Multiple Repositories

One of my initial responsibilities during the internship was to restore and stabilize the continuous integration pipelines for several django CMS repositories. Many of these projects had outdated or broken GitHub Actions workflows. To address this, I first familiarized myself with the local setup processes for each project, including configuring the tox environments and reproducing the failing tests locally. Over the course of several weeks, I successfully diagnosed and resolved CI issues for multiple repositories—including djangocms-style, djangocms-file, and djangocms-picture. These fixes involved updating dependencies, adjusting test configurations, and ensuring compatibility with supported Django and Python versions. As a result, the CI pipelines for these projects are now green and provide a more reliable foundation for ongoing development and community contributions.

Modernizing the Testing Landscape

Following the initial CI restoration work, my next set of tasks focused on modernizing the testing infrastructure for some django CMS projects. Specifically, I migrated their test suites from the older setup.py-based configuration to the more current pytest testing framework. As part of this effort, I removed the dependency on django-app-helper, which was previously used to bootstrap test environments, aligning the projects with the standardized testing practices now adopted across the django CMS ecosystem. In addition to testing improvements, I worked on extending support for django CMS version 4 in the djangocms-picture package. This involved updating the codebase to ensure compatibility and improve integration with the version 4 of djangocms.

Building for the Future: Centralizing Image Functionality

Currently, together with django CMS Fellow Vinit, I am focused on a larger upgrade to djangocms-picture. The goal is to make this package the central handler for all image-related functionality, allowing other picture-related plugins in the ecosystem to depend on it. This consolidation will help simplify maintenance and reduce redundancy across the platform. More details about this ongoing work can be found in the tracking issue.

Lowering the Barrier to Entry

Also, in an effort to make onboarding with django CMS easier, I am currently adding pre-built, serializable demo content to the django-cms-quickstart project. This demo content might be quickly installed using a manage.py command, allowing new users to quickly set up a fully populated site. The goal is to provide an interactive “Structure Board” already populated with real content that showcases django CMS features and serves as a practical guide. This will help users understand how to structure their own projects by seeing a functional example from the start. I am also currently working on the content for the demo project.

What's Next

As an outlook, I want to spend more time working with Django CMS, as I still have a lot to learn. I aim to improve my ability to clearly explain technical concepts within the Django CMS ecosystem. Additionally, I’m actively looking for opportunities in Python/Django development, where I can grow professionally and contribute meaningfully. Last but not least, I continue looking for ways to make a greater impact in the community.

blog comments powered by Disqus

Do you want to test django CMS?

Try django CMS