For Lantern I am going out of my comfort zone. Way out of my comfort zone and all of this is new to me, so this post is going to double as a way for me to remember what I’m doing and as a way to ask about improvements/suggestions for my set up.
Firstly, I am using JS on the front end for my map. I’ve decided to go with jQuery as my library since I find it makes things similar to AS3 which is where I’m most comfortable.
Next, I’m using nodeJS for the server. I’ve never before used anything but apache and it’s really different for me to handle the way it serves pages.
Since I’m using nodeJS and I’m trying new things, I decided to use mongoDB for the database. This is the first time I’ve used something other than MySQL so you can image the shock for me when I first started storing objects or when I had to set up a driver. The one that looked most promising to me and the one I went with in the end is Christv’s node native mongodb driver.
Finally, since my map system for Lantern will have real time updates I decided to lean on socket.io to handle my clients/communicate. This sits nicely on top of nodeJS but was the one that gave me the most trouble. First with it’s repo and the zip’s not having all the necessary files and then trying to figure out where the hell all the files belong. The client folder belongs in the root of the file you are running in node just in case anyone is wondering.
And as it turns out, today I was finally able to get all these different components running through nodeJS on my Ubuntu VM. Over the next few days I hope to be able to merge all these different tests into a single working example that I can hand to a few friends maybe that will be interested in helping.
But anyways, this setup is coming along nicely and it pleasant to see all the pieces fall in line. Hopefully the login;register will be rewritten soon to use with new system without too much trouble.