Superdesk
Open software for managing newsrooms and their content.

Ally-Py Framework

Default text view, Superdesk Article Edit Screen

Default text view, Superdesk Article Edit Screen

Ally-Py is a flexible, rapid development framework for developers who want to build any web-based application with a REST API.

Sourcefabric began developing the Ally-Py framework in 2011 to suit the needs of its Superdesk project. Ally-Py supports REST APIs but has been designed so that enterprises will be able to support new APIs in future, without having to change the business logic of the applications they write. Ally-Py is written in Python and is available for download under the GNU GPLv3 license.

View Ally-Py on GitHub

Why use Ally-Py?

The main focus is on API. We found that there were no other open source frameworks (at least not in PHP or Python) that supported and focused on API development to the extent required for building Superdesk. There are other web frameworks that pretend to support also REST but as an afterthought, not true REST and not as rapid development support for REST.

It's a service-oriented architecture. A service-oriented architecture means that the developer writes a generic service, not specific to REST. It's the framework that takes care of publishing the service as a certain API.

The architecture is standalone. An application's architecture does not depend on the Ally-Py framework. At any time the model and service classes can be taken away and put in a different framework - allowing the code to be reused.

The framework can create any API. Currently Ally-Py supports the REST API but can be made to support others (without affecting the application code).

It's a rapid development framework. Designed for quick development, the framework adheres to DRY principles, aimed at reducing the repetition of information and creating more efficient code and applications.

Who's using Ally-Py?

The first news organisation to use Ally-Py was TagesWoche, a newspaper in Basel, Switzerland. TagesWoche launched with Sourcefabric’s Newscoop CMS in October 2011, and needed to integrate it with Adobe InDesign. Ally- Py was used to write Print Desk, a web application which manages workflows, keeps track of content, and exports data from InDesign to Newscoop.

Ally-Py was used to build GEN Live Desk, a liveblogging service with support for ingest from multiple web services. A partnership between Global Editors Network and Sourcefabric, Live Blog was built in collaboration with Google, the BBC, the Guardian and Le Monde. Built on Superdesk technology, Live Blog plugin code is available now.

Developer resources

We've a full-blown developers resource guide, a top-level overview for CTOs and, of course a Github repository so you can get started yourself.

Live Blog began as a Google funded initiative from GEN's Editors' Lab programme, and was developed alongside journalists from the BBC, the Guardian, Le Monde, and other media organisations. Based on the media professionals' specifications, Sourcefabric began the detailed process of business requirements, wireframing, testing coding, testing and refining the tool.

Want to partner with Sourcefabric on a Superdesk-powered newsroom tool like GEN have? Get in touch.