Recently, I have been working a lot with WebSockets, specifically with Socket.IO. As a former ActionScript developer I love being able to return to using events to send and receive data as well as having my application get real time updates from the server. It feels so natural and fits really well into the types of applications I like to build. However, I wanted some more organization. I wanted a library that was designed around CRUD and WebSockets. Something like Mongoose, but on the frontend. I looked all around GitHub and found some libraries that were close, but nothing that was perfect, so I decided to make one myself.
What is Marilyn?
Marilyn is a client side, Socket.IO driven, Pub/Sub, model layer with a query system similar to Mongoose.
It’s designed around the idea of centralizing communication to a Socket.IO server to models.
These models function almost exactly like Mongoose models. The CRUD methods function nearly identically to Mongoose’s and they have event hooks that are triggered before and after CRUD operations, which are useful for synchronizing data between the client and the server.
Check out Marilyn and see if it’s the model layer you have been looking for. If you think Marilyn is missing something please submit a feature request.