Patent ID: 8423585

Claim:
A non-transitory computer-readable medium embodying a program executable in at least one computing device, the program comprising: code that maintains 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; code that obtains 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; code that creates a file corresponding to the file in the one of the file systems and stores a primary data object corresponding to the file in the at least one data store in response to the request; code that encodes the file into a secondary data object that is customized for presentation on a mobile computing device associated with the corresponding one of the users and stores the secondary data object in the at least one data store; code that creates 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; code that obtains a request to access the file from the corresponding one of the users; code that sends 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 code that sends 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.