diff --git a/ansible/roles/react-build/tasks/main.yaml b/ansible/roles/react-build/tasks/main.yaml
index 4efc1ccb005f0f9bccf3e0512dc09e8e15af237d..faf5b27ea569ebf4d2e42a8a8c842c3c3d61b6e5 100644
--- a/ansible/roles/react-build/tasks/main.yaml
+++ b/ansible/roles/react-build/tasks/main.yaml
@@ -1,3 +1,4 @@
+<<<<<<< HEAD
 # ---
 #   - name: check if packages exits
 #     package_facts:
@@ -191,11 +192,216 @@
   # - debug: 
   #     msg: 'all servers stopped'
   # #   when: build_copy.rc == 0
+=======
+---
+  - name: check if packages exits
+    package_facts:
+      manager: auto
   
-  - name: start the server
+  - name: 'install all the dependencies '
+    tags: always
     become: yes
+    apt:
+        name: ['nodejs','npm']
+        state: present
+        install_recommends: no
+        update_cache: yes
+  - debug: 
+      msg: "node and npm installed"
+  
+  - name: make sure the latest npm is installed
+    tags: 'node'
+    become: yes
+    npm:
+      name: npm
+      global: yes
+      state: present
+  
+  - name: install react
+    tags: 'react'
+    become: yes
+    npm:
+      name: create-react-app
+      global: yes
+      state: present
+    
+  - name: traverse into the project directory.
+    become: yes
+    shell: cd
+    args:
+      chdir: /var/lib/react
+    register: dir_changed
+  
+  - name: clone git repo
+    become: yes
+    git:
+      repo: https://github.com/advait22/react-server.git
+      dest: /var/lib/react
+      force: yes
+  - debug:
+      msg: 'git repo cloned'
+    when: dir_changed.rc == 0 
+  
+  - name: change working directory to the app
+    become: yes
+    shell: cd
+    args:
+      chdir: /var/lib/react/express_react_example
+    register: server
+  
+  - name: install all the packages for server
+    become: yes
+    npm:
+      path: /var/lib/react/express_react_example/
+      name: install
+  - debug: 
+      msg: 'inside server'
+    when: server.rc == 0 
+  
+  - name: change working directory to the client
+    become: yes
+    shell: cd
+    args:
+      chdir: /var/lib/react/express_react_example/client
+    register: client
+  
+  - name: install dependencies
+    become: yes
+    npm:
+      path: /var/lib/react/express_react_example/client
+      name: install
+  - debug:
+      msg: 'Client Dependencies installed'
+    when: client.rc == 0
+  
+  - name: Ansible check directory exists build in client.
+    stat:
+      path: /var/lib/react/express_react_example/client/build
+    register: files_to_delete
+  
+  - name: delete previous build folder
+    become: yes
+    shell: rm -rf build
+    args:
+      chdir: /var/lib/react/express_react_example/client/
+    register: build_delete
+  - debug:
+      msg: "build deleted"
+    when: files_to_delete.stat.exists == true
+  
+    ###workaround for react js bug in build command
+    
+  - name: delete dependencies on client
+    become: yes
+    shell: rm -rf node_modules
+    args:
+      chdir: /var/lib/react/express_react_example/client/
+    register: deleted_modules
+  - debug:
+      msg: 'Client Dependencies delete'
+  
+  - name: clear npm cache
+    tags: 'clear cache'
+    become: yes
+    shell: npm cache clean --force
+    args:
+      chdir: /var/lib/react/express_react_example/client
+    register: cache_cleaned
+    when: deleted_modules.rc == 0
+  
+  - name: install dependencies
+    become: yes
+    npm:
+      path: /var/lib/react/express_react_example/
+      name: express
+  - debug:
+      msg: 'Client express installed'
+  
+  - name: install dependencies
+    become: yes
+    npm:
+      path: /var/lib/react/express_react_example/client
+      name: install
+  - debug:
+      msg: 'Client Dependencies installed'
+    when: cache_cleaned.rc == 0
+  
+  - name: install react scripts
+    tags: 'react scripts'
+    become: yes
+    shell: npm install --save react-scripts@3.0.1 react react-dom
+    args:
+      chdir: /var/lib/react/express_react_example/client
+    register: react_scripts
+    when: cache_cleaned.rc == 0
+    
+  #################################################################
+  
+  - name : compile the new build
+    tags: build
+    become: yes
+    shell: npm run build
+    args:
+      chdir: /var/lib/react/express_react_example/client
+  - debug:
+      msg: 'new build successfull'
+  
+  - name: Ansible check directory exists build in server.
+    stat:
+      path: /var/lib/react/express_react_example/build
+    register: files_to_delete_from_server
+  
+  - name: delete previous build folder in server
+    become: yes
+    shell: rm -rf build
+    args:
+      chdir: /var/lib/react/express_react_example/
+      warn: false
+    register: build_delete_server
+  - debug:
+      msg: "deleting old build from server"
+    when: files_to_delete_from_server.stat.exists == true
+  
+  - name: copy new build to parent folder
+    become: yes
+    command: mv /var/lib/react/express_react_example/client/build /var/lib/react/express_react_example
+    register: build_copy
+  - debug:
+      msg: 'build copied'
+    when: build_delete_server.rc == 0
+
+  - name: "Install forever (to run Node.js app)."
+    become: yes
+    npm: 
+      name: forever 
+      global: yes 
+      state: present
+
+  - name: "Check list of Node.js apps running."
+    become: yes
+    command: forever list
+    register: forever_list
+    changed_when: false
+>>>>>>> 526fcc749ba8644fccb39286d817d314a38308f0
+  
+  - name: stop if the server is running
+    become: yes
+<<<<<<< HEAD
     command: node /var/lib/react/express_react_example/server.js &
     # command: pm2 start /var/lib/react/express_react_example/server.js
   - debug: 
       msg: 'yayyyyyyyyyyy app is running'
-    # when: stop_server.rc == 0  
\ No newline at end of file
+    # when: stop_server.rc == 0  
+=======
+    command: forever stopall 
+  - debug:
+      msg: "server stopped"
+    when: forever_list.stdout.find('/var/lib/react/express_react_example/server.js') == "336"
+
+  - name: "Start react.js app."
+    become: yes
+    command: forever start /var/lib/react/express_react_example/server.js
+  - debug:
+      msg: "server started"
+    when: forever_list.stdout.find('/var/lib/react/express_react_example/server.js') == -1
+>>>>>>> 526fcc749ba8644fccb39286d817d314a38308f0