Preview: Cloud Resources for TYPO3 Flow 2.1

When I started writing the first lines of code for Flow's resource management, I essentially had one goal: all data stored on a web server is temporary – persistent data can be stored elsewhere. This feature didn't make it into a Flow release so far, but the APIs were shaped for that goal from the beginning. In Flow 2.1 we'll finally see cloud storage and cloud resources happen – and it's basically a matter of switching it on.

Hassle-Free Asset Management

As always, it is rather easy to create a proof of concept, but the real work begins when you try to simplify a solution so it's easy to configure and to use. I started with first drafts last winter and created a running demo in February this year. During the last few weeks I have intensively worked on it again and brought it into a state where I'm convinced about the concept, API and functionality.

Here are the key features for our new resource / asset management:

  • grouping of resources into collections
  • each collection can store and publish their resources to their own storage / publishing target
  • automatic handling of storage management and (de)publication
  • no persistent file system required – all resources can be stored and published outside the web server
  • full featured Content Delivery Network support
  • local and remote file system support for smaller projects
  • very slim API for your own custom storage / target implementations
  • command line tool for publishing and managing resources
  • post processing support for collections: minify, render, combine etc
  • compatibility with Assetic filters (proof of concept pending)
  • fully backwards compatible with Flow 2.0 applications (provided that they use the official API)

Sounds good so far? Then, without further ado, I invite you to watch the demo video which shows off some of what my current implementation can do:

Maybe you guessed it, there's a catch: it's not finished yet. While I know of a couple of projects and can imagine a gazillion more which are burning to use this feature, I currently personally don't have a customer project which could fund the development. So far, Yeebase (the fine people behind helped me getting started with the essential parts by sponsoring 6 days of development. And since I didn't want to lose the train of thought I decided to just keep on developing another 12 days on my own account until I was more confident about the API.

I'm confident that customer projects will eventually make this feature happen. If you need some of the functionality I talked about and see a way to fund parts of the development, please get in touch with me.

Your Feature?

There are lots of smaller features which I didn't mention here, which will make asset management a breeze. But it may very well be that I forgot an important aspect – so, what's your pet feature for the new resource management? Leave your thoughts in the comments …

Photo © theaucitron

Leave a reply