1. A method for simulating an online session while offline, comprising: invoking functional logic associated with a server to manipulate data in a database associated with the server; allowing a client to establish one or more communication channels through a network that connects the client to the server; importing 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 importing to the client further comprises establishing a directory structure in the client; while offline, allowing a user to manipulate, view, an modify the at least a portion of the data; and after the client returns online, performing a synchronization process by uploading the modified or newly created data records from the client to the database.