Introduction
Screenly Cast was initially created and released in 2016 with a simple yet powerful purpose: to transform WordPress articles into a display-friendly layout. However, as time passed, the project fell into a period of inactivity and remained unmaintained for years. With recent advancements in generative AI coding tools, we saw an opportunity to breathe new life into Screenly Cast and bring it up to speed with today’s technological standards.
Challenges
The primary challenge we faced was the plugin’s compatibility with WordPress. After years without maintenance, the WordPress plugin had become incompatible and essentially unusable, especially with newer WordPress versions.
What’s New and Improved
Modernizing CI/CD Pipeline
During the resurrection process, we implemented several significant improvements to modernize the project. We replaced Travis CI with GitHub Actions, consolidating our source code management and continuous integration/delivery onto a single platform. This integration has greatly improved our ability to manage unit tests, releases, and deployments effectively.
Containerized Testing Environment
We also focused on containerizing our unit tests, which eliminated the need to worry about dependency installation, whether running tests locally or through CI/CD. This containerization approach has streamlined our testing process significantly.
Enhanced Local Development
While Screenly Cast was already utilizing Composer for CI/CD dependency installation, we extended its use to our local testing environment. By combining Composer with Docker, we’ve created a plug-and-play solution for running unit tests, making the development process more efficient.
Improved Code Quality
We’ve also embraced strict typing declarations in our codebase. Although PHP is traditionally a dynamically typed language, implementing type declarations has helped us write more readable and predictable code. While this approach does come with some drawbacks, we believe the long-term benefits of easier debugging and maintenance far outweigh any initial challenges.
WordPress Version Compatibility
A crucial improvement was adding support for multiple WordPress versions. This enhancement ensures that Screenly Cast remains both future-proof and backwards-compatible, accommodating a wider range of WordPress installations.
Moving Forward
With Screenly Cast now modernized and up-to-date, users can confidently use it with both Screenly and Anthias. We remain committed to the project’s open-source nature and actively welcome community contributions, whether through issue reporting or pull request submissions.