# Technologies

### Technologies Used

The components of the App are built using the core components of Flutter. The theme also constantly incorporates various other latest technologies.

* Mobile app:  [Flutter](https://flutter.dev/) (Flutter 2.X) ( Mobile app Develop with this framework and use [Getwidget](https://www.getwidget.dev/) to build UI )&#x20;
* Dashboard: [Angular](https://angular.io/) (Angualr 12) (Dashboard built on the angular framework)&#x20;
* API: [NestJS](https://nestjs.com/) (Version: 14) ( Backend API develop on typescript and MongoDB )&#x20;

## Nest JS

​Nest (NestJS) is a framework for building efficient, scalable [Node.js](https://nodejs.org/) server-side applications. It uses progressive JavaScript, is built with and fully supports [TypeScript](http://www.typescriptlang.org/) (yet still enables developers to code in pure JavaScript), and combines elements of OOP (Object Oriented Programming), FP (Functional Programming), and FRP (Functional Reactive Programming).

Under the hood, Nest makes use of robust HTTP Server frameworks like [Express](https://expressjs.com/) (the default) and optionally can be configured to use [Fastify](https://github.com/fastify/fastify) as well!

Nest provides a level of abstraction above these common Node.js frameworks (Express/Fastify) but also exposes their APIs directly to the developer. This allows developers the freedom to use the myriad of third-party modules that are available for the underlying platform.

### Prerequisites

* [Download Nodejs 10 or above](https://nodejs.org/en/download/)

### [**How to Install NestJS**](https://docs.ionicfirebaseapp.com/readymade-grocery-shop/api-backend/nestjs-installation)

## ​Angular

​[Angular](https://angular.io/) is a platform that makes it easy to build applications with the web and mobile. Angular combines declarative templates, dependency injection, end-to-end tooling, and integrated best practices to solve development challenges. Angular empowers developers to build applications that live on the web, mobile, or desktop. Angular is an all-encompassing JavaScript framework that is frequently used by developers all over the world for building web, desktop, and mobile applications. This release focused on making Angular smaller and faster to use.

### Prerequisites

* [Nodejs 10 or above](https://nodejs.org/en/download/)
* [node-sass](https://github.com/sass/node-sass)

### [Install Angular](https://docs.ionicfirebaseapp.com/flutter-grocery-app/dashboard/angular-installtion)

## Flutter

[**Flutter**](https://flutter.io/) is Google’s mobile app SDK for crafting high-quality native interfaces on iOS and Android in record time. Flutter works with existing code, is used by developers and organizations around the world, and is free and open-source.

### Prerequisites

* Flutter SDK latest
* Dart latest
* JAVA 8 or above
* Latest Android studio with NDK
* Xcode (on MacOS for IOS)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ionicfirebaseapp.com/readymade-grocery-shop/introduction/technologies-used.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
