# Integrating Back-end

## **Data Structure**

In  `environment.ts`, there is dummy data file placed to mimic the behavior of a back-end.

E.g. Following images shows the data and its structure for slides on the landing page. The data is in JSON format.

![](https://1925830933-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LqtxN3m30k544CBSZb_%2F-MABiJrKBrQGNTCTbjxN%2F-MABk6etVIbxuTpP6jTh%2FScreen%20Shot%202020-06-19%20at%206.54.08%20PM.png?alt=media\&token=e410e4d2-6d1c-4681-ab9c-a70fb5072daa)

E.g. Data is imported in the `page.ts` file as `this.service.slides` . Here, service is service provider name, `homeData` is the JSON data in service

## **Back-end options**

To make the app fully operational you will need to attach a back-end to the app. This will require several additions and you will need the assistance of a back-end developer.

We will provide a glimpse into the things you will require

### **Step 1 — Choose a back-end Technology**

There are several options when it comes to back-end. Some of the major ones are

1. Node.js custom back-end
2. Firebase back-end (node.js) ([Read intro blog here](https://enappd.com/blog/firebase-with-ionic-4-hosting-auth-and-db-connection/58))
3. Django custom back-end
4. Ruby-on-rails custom back-end
5. GO back-end

We recommend starting out with Firebase, if you want quick turn-around of features. Firebase is a BaaS platform and comes with a bunch of ready-made functionality, like

* Storage
* Database
* Analytics
* [Push notifications](https://enappd.com/blog/implement-ionic-4-firebase-push/34)
* In-app messages
* [Real-time database and much more](https://enappd.com/blog/how-to-integrate-firebase-in-ionic-4-apps/23)
* [Anonymous login](https://enappd.com/blog/firebase-anonymous-login-in-ionic-4/37)
* [Email login](https://enappd.com/blog/email-authentication-with-firebase-in-ionic-4/38)

### **Step 2 — Connect the back-end to the app**

As explained in the section above, you will need to replace the Data coming in from individual JSON files with the data coming in from APIs (from your back-end).

You can either keep the same service file for all the data, or you can create individual service files to fetch data for individual pages or features.

To manage the data efficiently, you will need to arrange all API calls, and data manipulation in a single location. You can manage API calls with HttpClient services or [firebase functions.](https://enappd.com/blog/firebase-cloud-functions-in-ionic-4-complete-guide/32)
