1. A computer program product embodied on a non-transitory computer readable medium, the computer program product including code adapted to be executed by a computer to perform a method comprising: establishing, by a client device, a connection over a network with a remote system including at least one server, the connection allowing the client device, when online, to communicate with the remote system; using the connection, initiating execution of functional logic at the remote system through a server API solution and an Extensible Markup Language remote procedure call (XML-RPC) to manipulate data in a database of the remote system; sending, by the client to the remote system, a message requesting to enable an offline session; responsive to the message, receiving by the client device from the remote system: a portion of functional logic executable to access a user-specified portion of the data once such user-specified portion of the data is imported to the client device from the database, so that the client device can conduct the offline session in isolation by enabling the user to modify the user-specified portion of the data imported to the client device by using the imported functional logic, a directory structure, and the user specified portion of the data from the database, wherein the user-specified portion is selected from the database utilizing criteria defined by the user of the client device; terminating, by the client device, the connection with the remote system in response to the client device being offline; after the terminating of the connection with the remote system by the client device, establishing another connection with the remote system by the client device via the network when the client device returns online; and performing, by the client device, a synchronization process with the remote system via the other connection by sending the modified data from the client device to the database of the remote system.