We liked Heroku's one-click deployment which is available for GitHub projects, and wanted to have the same workflow with Microsoft Azure. Putting the user experience first, we wanted to tightly integrate these two functionalities.
How it works
We created a Chrome extension to allow the user to easily deploy any project on GitHub they find that we support. This support is auto-detected, and the button is only shown for projects that Azure can handle. After a quick, one-time set up, our chrome extension takes care of the whole process of deploying a GitHub project for Azure, from grabbing the files, all the way to installing the proper dependencies required for the project. After a few seconds of pressing the button and watching the automated build process take place, a new tab is opened with the user's newly deployed website.
The Google Chrome extension we created first injects a seamless button into the page on a repository it deems compatible with Azure. It then calls upon our backend, which is primarily written in node.js, allowing for great asynchronous performance. We utilize web sockets from socket.io to transfer secure data between the user's system and our server. Data is processed and our custom automated build process is run utilizing a REST API for deployment to Azure.