I agree to the use of cookies in accordance with the Sourcefabric Privacy Policy.

Support our media development efforts

Please note: due to the quarantine measures required by the coronavirus outbreak, we are unable to answer the phone in our Prague office. Please send an email to [email protected] and someone will get back to you as soon as possible.

Who, what, when, where and why

Get the latest news about Sourcefabric software, solutions and ideas.

BACK TO BLOG OVERVIEW

Introducing the Newscoop 4.3 plugin system

Photo by Aleksi Tappura (CC0 1.0)
Photo by Aleksi Tappura (CC0 1.0)

With the release of Newscoop 4.3 the new plugin system has made its official and full featured entrance. The new plugin system allows developers to easily extend Newscoop by overriding, extending or adding features. It also means no more customizing the source code and makes upgrading Newscoop easier without creating conflicts with your extensions.

In this blogpost I will explain the newest features of the plugin system. Also don’t forget to check out the video I made for our #Nerdvent calendar!

For the technical introduction about the plugin system, please see or documentation of the plugin design and check out the Example plugin, too.

Behind the curtains

The plugin architecture is based on Symfony bundles, basically each plugin is a new bundle. (Read more about the power of bundles.) We’ve added some extra customisations to the default bundle structure to make it possible to register new Smarty functions and Newscoop dashboard widgets. Furthermore it’s easily possible to add system preferences, schedule cron jobs and add user permissions during the install of your plugin.

We manage our plugins with the help of Composer. Composer will take care of installing your plugins dependencies, and your plugin will become a dependency of your Newscoop installation.

Private or public

There are two types of plugins, public and private ones. Public plugins can be registered on the Packagist, which is the main Composer repository. It aggregates all sorts of PHP packages that are installable with Composer. They will become publicly available and everyone with a Newscoop installation can easily install them from their own Plugins management interface (see screenshots).

Private plugins can be used for non-public code, e.g. a client specific feature. Just upload a zip-file with your plugin inside and it becomes as easy to manage as any other plugin. To create the correct zip file, just zip the root folder of your plugin repository and you’re good to go.

The renewed plugin management interface

From now on, all plugins can be managed from a new plugin management interface. You can install, update and remove them and view the Composer output directly in Newscoop.

Install publicly available plugins easily by searching for their name.

If you click the ‘install’, ‘update’ or ‘remove’ buttons, a modal will open with the output of the commands being run to perform your action.

Upload your private plugin zip file and install it directly from the interface.

 

Plugins ready for use

Our latest additions to the list of plugins are:

Airtime integration: Manage and display Airtime data in Newscoop.

Google Events: Enables you to ingest, manage, and display Google calendar events in Newscoop.

You will find the list of our ready to use plugins in this blogpost.

For the complete list of Newscoop plugins created by Sourcefabric, please view our Newscoop GitHub.


A small note for the developers: we’re currently also working on a plugin bundle generator. This will speed up the process of setting up new plugins and save you a lot of headaches changing all the files yourself. So stay tuned for more news coming shortly!

DOWNLOAD NEWSCOOP 4.3 NOW!

BACK TO TOP