Some thoughts in between SPA projects

Yay, I just launched a project. It’s an internal single page application. On the server side a restful api built with ServiceStack serving json data and files (reports in PDF format and images) on a separate service-address (cross domain). And a client side application primarily for iPads, but built with Html5 for wider platform reach in the future.

I’m currently trying to collect my thoughts about what I could have done better, and what to change for next project (or for refactoring the same project). One thing is the team. I was the developer for both client and server side + the UI&UX designer (or rather “Bootstrap-devsigner”), and it would probably be better to be at least two persons for this kind of a project.

I’m rather pleased with the server side. ServiceStack makes it pretty easy to build a well structured, easy to maintain api. I’m using it together with the PetaPoco microorm, and legacy Poco’s. I would probably have choosen ServiceStack’s own MicroOrm if I was to redo it now. Since I ditched most of my legacy code anyways.

For the client side I’m pleased with the application, but the road there was a bit rocky. And the maintenance will be a bit harder than it should. So for the future I decided to find and choose a good client side framework.

Currently it looks like I’m going to choose AngularJs, which seems to get increasing popularity for each day, and I hear good things about it from pretty much everywhere. Plus I like the Angular team opinions and ideas. The main alternative is Backbone+Marionette. I already use some of backbone, and adding more of it + Marionette in iterations would probably be easier and more seamless than moving to Angular.

The client side language is Typescript, which I’m very happy with. The tools failed me a few times, nothing to write home about, but as it is still preview some problems was expected.

To be continued…

2 thoughts on “Some thoughts in between SPA projects

  1. Any design patters for large enterprise UI javascript developments? we used KendoUI for our project but at the time, there were no route options… we really use extensible MVVM and when we could, create our own MVVM widgets, like one for capturing address and phone information… used in multiple forms…

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s