Its doable, but it would be from the ground up as there are no existing libraries specifically made to handle all the many elements.
Take a look at the ajax object first as any time you start talking about members you get features only a server can do.