1. A computer program product embodied on a tangible computer readable medium, comprising: computer code for invoking functional logic associated with a server to manipulate data in a database associated with the server; computer code for allowing a client to establish one or more communication channels through a network that connects the client to the server; computer code for downloading to the client at least a portion of the data from the database and at least a portion of the functional logic associated with the server so that the client can conduct an offline session in isolation, wherein the computer program product is operable such that the downloading to the client, at least in part, further comprises establishing a directory structure in the client; computer code for, while offline, allowing a user to at least one of manipulate, view, and modify the at least a portion of the data; and computer code for, after the client returns online, performing a synchronization process by uploading the at least one of manipulated, viewed, and modified at least a portion of the data from the client to the database.