Summer of Code 2016

+1, especially if there were some common goals around things like:

  1. Not lossy: JSON preserves metadata defined in content schema, with standard serialization for common types.
  2. Graceful with files: store "primary field" binary contents (e.g. image, file) in native format, with JSON side-car file for metadata.
  3. Graceful with folderish content: keep metadata about folderish content inside a file within the folder (e.g. _index.json).
  4. Pluggable: add-on authors should be able to write a custom ContentJSON adapter, analogous to the way a JavaScript object can implement a toJSON() method.
  5. Might be nice if it works with DAV. Upload a bunch of folders and files, and "it just works" for lossless restore would be a noble goal (though DAV bits in Zope2/Plone would require some changes to handle #2/#3).

This project seems like it is the right size for a GSoC project, too. And many of these things seem approachable (excepting #5) with a well-mentored new developer.

Sean

1 Like