> For the complete documentation index, see [llms.txt](https://jembi.gitbook.io/cares-on-platform/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jembi.gitbook.io/cares-on-platform/readme.md).

# Getting started

### Hardware Requirements

A machine that has 24 RAM is advised, less than that may cause performance issues.&#x20;

### Software Requirements

The following tools are needed to run/deploy the stack:

* [Git CLI](https://git-scm.com/book/en/v2/Getting-Started-The-Command-Line)
* [WSL2](https://learn.microsoft.com/en-us/windows/wsl/install) (for windows users)&#x20;
* [Docker](https://docs.docker.com/engine/install/)

You will need first to clone the project on your machine.

{% hint style="info" %}

* If you're a ***W*****indows user,** you should limit the amount of RAM/CPU that will be used by WSL, for more details please check the following link: [Limiting memory usage in WSL2](https://www.aleksandrhovhannisyan.com/blog/limiting-memory-usage-in-wsl-2/).
* You should run the following command to initialize docker swarm on your machine: `docker swarm init.`
  {% endhint %}

### Prerequisites

* [Docker Swarm](https://docs.docker.com/engine/swarm/)
* [Terraform](https://www.terraform.io/) (for remote deployments to AWS only)
* [Ansible](https://www.ansible.com/) (for remote deployments only)
* [Platform Cli](https://jembi.gitbook.io/instant-v2/)

### What is Cares on Platform?&#x20;

Cares on Platform aims to provide a set of services working together to consume raw COVID data in FHIR format in order to produce reports and visualizations.&#x20;

This service will use, transform, and flatten the data to get the expected output and produce reports.&#x20;

It is aimed to be working in Single mode as well as Cluster mode with the ability to handle big data.

It is an implementation of the general project [Platform](https://github.com/jembi/platform) and it is developed to act as a **custom package** alongside some of the base packages in the Platform.

### What should I know before starting to develop?

It is advised to take a look at [Platform CLI](https://jembi.gitbook.io/instant-v2/) docs, as well as [Jembi Platform](https://jembi.gitbook.io/openhim-platform/) docs to understand the basics of the CLI and the packages used in this project.

### Quick Start for Devs

The following steps provide a quick start to Cares on platform:

1. Clone the [GitHub repository for the project](https://github.com/jembi/cares-disi-on-platform).
2. In your terminal, navigate to the project root directory and run the command: `./get-cli.sh` to download the [platform-cli](https://jembi.gitbook.io/instant-v2/) executable for your operating system`[linux|windows|macos].`\
   Example: `./get-cli.sh linux`  to download the binary for use on Linux.
3. According to your arguments provided in the first command, it downloads one or three executable files `platform-linux | platform-macos | platform.exe`. \
   Now you should edit the command in the `deploy-local.sh` file. It should make use of the executable suitable for your operating system (the default: `platform-linux`).
4. Ensure docker is installed on your machine, and run the command `docker swarm init` to initialize a docker swarm.
5. To start up the project run the command`./deploy-local-combo.sh init` .

The following options can be passed to the `./deploy-local-combo.sh` command:

* `init` for initializing the services
* `down` for stopping the services
* `up` for bringing the services up
* `destroy` for removing the services&#x20;

### What I expect to see ?&#x20;

Running the deploy-local.sh script will spin up the services. \
You can run: `docker service ls` to view the current running services.

You can check the sub-section [Local deployment](/cares-on-platform/deployment/local-deployment.md) to check the expected running services.

### Need more info ?&#x20;

You can check the [Overview](/cares-on-platform/overview.md) section for more understanding.

For more info on components and services, view [Design & Architecture](/cares-on-platform/design-and-architecture.md).

The section [Launching & Local Testing](/cares-on-platform/launching-and-local-testing.md) will detail which services should be up and running and how to test all the flow.&#x20;

The section [Troubleshooting & Monitoring](/cares-on-platform/troubleshooting-and-monitoring.md)will explain the steps to locate and issue if you're facing one.

The section [Deployment](/cares-on-platform/deployment.md) will mention more options for starting the stack.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://jembi.gitbook.io/cares-on-platform/readme.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.
