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 t3n.de) 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

Comments

  1. So, when will this be published to really use it in a productive project?

  2. Hi Mario,

    I roughly estimate that it'll take another 2 weeks of work to finish the implementation, adjust tests and documentation, and to integrate it into Flow master. It depends on customer projects or other funding when this will happen.

  3. Looks awesome!

  4. Will secure file downloads be possible as mentioned in the docs (http://docs.typo3.org/flow/TYPO3FlowDocumentation/TheDefinitiveGuide/PartIII/Security.html) ? I ask, because AFAIR you wrote on IRC you removed this stuff completely.