How to deploy a React.js application

Create an app with create-react-app.

Get an account with Digital Ocean.

SSH into the Droplet.

  • ssh root@your-ipaddress
  • Then install nginx: 1) apt-get update 2) apt-get install -y nginx

Once nginx is installed:

  • Remove symlink to default config
  • rm /etc/nginx/sites-enabled/default

Then with Vim

  • vim /etc/nginx/sites-available/nameofyourapp

paste this contents into “nameofyourappp”

server {
root /var/www/;
listen 80;
location / {

Create a Symllink

  • ln -s /etc/nginx/sites-available/nameofyourapp /etc/nginx/sites-enabled/nameofyourapp

Reload nginx

  • nginx -s reload

Apex cargo Project System info

Git Rebase


We use a git rebase when someone in our team has merged with the remote master branch, and we are working on a feature locally. This means that our local branch is out of date from the one on the server.

Two branches:

-> Master branch

-> feature/UiDashboard

Go to the Local master branch. When your on the Local master then pull it from the remote origin master branch.

Switch to the feature/UiDashboard branch. Then type into the terminal:

git rebase master

Push existing project to another repo on Github

-> We want to do this when we want to have a history of commits.

-> We open the terminal and go to the directory

-> Type nano .git/config into the terminal. Where the project is located.

-> In the [“remote origin”] change the url manually to the Github url that the repo will be. Then we type ctrl + o to (write out ) the file. Followed by CTRL+ X to exit the nano view.


Cucumber is a tool it is not a programming language.

Xamarin – sets for deploying an android application

In the Android project click on Android_manifest.xml. Once you do that you can edit the “Required permissions” section.

In my project I am using the Device’s camera as well as the Camera’s internet (WIFI)

under required permission I clicked:

1) AccessCoarseLocation (Read online that this is default)

2) AccessFineLocation (Read online that this is default)

3) Camera

4) Internet

Screen Shot 2018-02-10 at 15.09.16


Once I deployed the App, I has difficulty trying to switch the App back to deployment mode. I was unable to deploy the app to my physical mobile device.



I changed both the Application and the end of the Package Name from WeActive to WeActiveApp.

However, I recommend keeping the Package name the same. Only change the Application Name. It should still deploy.

.NET Standard 2.0 and .NET Core

The .Net Standard library, think of it as an interface. A library which is generic, consisting of interfaces and classes, and is implemented differently in .Net Core and Mono framework.

When I worked in the delivery company, we created standard .net libraries which were then imported by the .NET core Application.

Unable to make work with .Net standard version 1.0 because they took out a lot of API’s which they have now put back in .Net standard version 2.0.

Net standard 2.0 can be shared amongst xamarin and web application.

Compatibility with Windows and Mac

Visual Studio for Mac Version 7.1

It is possible to work on the same project from either a Windows or a Mac.

Business Application Project

1) Jamie prefers to have control over the Servers. That way it is cheaper in terms of support because you know exactly what is going on.

2) Business Application infrastructure. For 5 companies or below it would be best to have one Server that you provide to host the Companies data. However, for more companies let say 50 then you may want to decentralise the Servers. This means that you have servers on the Client’s office space. In further detail this means that you would only have a Database server on the client’s office and then one website.


→ Limited budget, only £4000 pounds in

Balloon One Review

When a many computers connect to your server think of it that each client get’s it’s own instance of the code. The only time that Clients will have shared code is when classes or variables are marked as static. This is why I was told previously in my career history why you should never mark a class as static, however marking variables as static is fine. Making a class static makes it messy.


SQL Lite

SQL Lite is the Database Query Langauge used on Mobile phone devices, mainly iPhone and Android.

How did the Application fit together

There are three pieces to the Springboard Delivery Application.

  • The Website
  • The Webservice API
  • The Mobile Application

The Webservice API

Firstly, I had to launch the Webservice API. I did this by going into Visual Studio and pressing F5. When you do this the URLs are on-line and it it possible to access the URLS from your Mobile application. Gabor said that the Webservice is only used by the Mobile Phone. However, one reason why I am a little sceptical of that claim is because I had to run the web-service even when I was working on the website. Furthermore, I remember previously that Gabor said that the web-service was used by both the website and mobile applications.

  • Webservice must be hosted on a HTTPS server. To prevent anyone accessing the Webservice
  • In the Action method for the Webservice we have an Authentication object so we can check if the User is logged into the Application using an If statement.
  • The Webservice is the DataLayer between the Database and the Web Application.

The Website

Note that the Website, Webservice and the Mobile Application  were all built client side, on my Computer. The Database was the only thing built server side. This meant that on the server side computer. The server had a Linux/Ubuntu Operating System with MariaDB installed that’s it. We connected to the Server using Heildsql to modify and create table data.Picture

The Mobile Application

With the Mobile Application we have to synchronise it with the database so that the data we have on our mobile phones is always up to data with what we have on our Data. I remember my lead developer, create a button on the mobile phone application called synchronise which you would have to press in order to get the latest data. The reason you have to do this is because the mobile doesn’t always get Wifi signal so it can’t connect to your database through the web API.