A method comprising: maintaining, in at least one computing device a plurality of file systems for a plurality of users, each of the file systems including a plurality of files and at least one folder, each of the files including a respective unique identifier and a respective reference to a primary data object stored in at least one data store; obtaining a request to store a file in one of the file systems from a corresponding one of the users who is associated with the one of the file systems; creating a file corresponding to the file in the one of the file systems and storing a primary data object corresponding to the file in the at least one data store in response to the request; encoding the file into a secondary data object that is data reduced to facilitate streaming or downsampled or resized for presentation on an application platform which is a mobile computing device; storing the secondary data object in the at least one data store; creating a file variant based at least in part on the file in the corresponding file system, the file variant including a reference to the unique identifier of the file and a reference to the secondary data object stored in the at least one data store; obtaining a request to access the file from the corresponding one of the users; sending the secondary data object referenced by the file variant to the mobile computing device when the request to access relates to access by the mobile computing device; and sending the primary data object referenced by the file to another computing device when the request to access relates to access by the other computing device. maintaining, in at least one computing device a plurality of file systems for a plurality of users, each of the file systems including a plurality of files and at least one folder, each of the files including a respective unique identifier and a respective reference to a primary data object stored in at least one data store; obtaining a request to store a file in one of the file systems from a corresponding one of the users who is associated with the one of the file systems; creating a file corresponding to the file in the one of the file systems and storing a primary data object corresponding to the file in the at least one data store in response to the request; encoding the file into a secondary data object that is data reduced to facilitate streaming or downsampled or resized for presentation on an application platform which is a mobile computing device; storing the secondary data object in the at least one data store; creating a file variant based at least in part on the file in the corresponding file system, the file variant including a reference to the unique identifier of the file and a reference to the secondary data object stored in the at least one data store; obtaining a request to access the file from the corresponding one of the users; sending the secondary data object referenced by the file variant to the mobile computing device when the request to access relates to access by the mobile computing device; and sending the primary data object referenced by the file to another computing device when the request to access relates to access by the other computing device.