Sunday, November 18, 2018

Background

Over the years I identified a need for a simple framework that I could use as a starting point or base for multiple projects that could be deployed as a website, mobile app, or a desktop application, and is operating system neutral. In other words, I wanted to write a single code base that I could deploy to Windows desktop, Mac desktop, IOS (Apple) device, Android device, or simply run it as a stand alone website.

I tried building my own (with very limited success) and after investing a ton of effort realized the monumental scope of what I was trying to achieve. Then I discovered Cordova (Phonegap) ... ahhh ... some light at the end of the tunnel.

After lots of trial and effort and countless hours of searching and reading I finally settled in on a technology stack that could work:

  • Aurelia - Pure Javascript MVC framework in a SPA format
  • Node - Javascript host
  • Cordova - Javascript Mobile Interface and builder for IOS and Android
  • Electron - Javascript Desktop interface and builder for Windows, Mac and Linux  

Now all I need to do is put all the plumbing in place to make it work!

The Smoke House Project

The purpose of this blog is to take you along on my journey to put all of this technology together in a base package that can be reused as a starting point for other ongoing development efforts.

About a year ago I created an open source repository on GitHub called The Smoke House Project
I am writing this blog postmortem because I realized I needed to update and refresh the core code and thought other developers with similar interests may want to follow along.

I have been using this base for several projects for a little over a year and so far it has been working very well. My last project was a very large scale desktop application that required some additional code to be added to the base. As well, there have been some recent improvements in Aurelia so I thought now is a good time to update the project.

Please feel free to comment or ask questions. I am going to try to highlight as many challenges as I can but if you are stuck on something I will try to include it in my efforts here.

As always, I am open to others contributing!

You can reach me directly at my email if you don't feel comfortable asking questions here.  

No comments:

Post a Comment