# Git Repository Conventions

The development strategy required to use a "monorepo" in order to deploy all services using CI/CD pipeline. The repository contains multiple packages (microservices) that can but do not have to be related.

## Project structure

The file structure for the monorepo should look like:

```
my-monorepo
├── packages
|   ├── package 1
|   |   ├── .cxcloud.yaml
|   |   └── ...
|   ├── package 2
|   |   ├── .cxcloud.yaml
|   |   └── ...
|   └── package n
|       ├── .cxcloud.yaml
|       └── ...
├── .cxcloud.yaml
└── ...
```

Every microservice folder should include `.cxcloud.yaml` file with the configuration for Kubernetes.

There is no naming convention for the packages, but it is recommended to add a prefix to the microservice such as `"package-"` or `"service-"`.

In order to simplify and optimize the workflow around development with the multi-package repository, the managing tool such as [Lerna](https://lerna.js.org/) can be in use.


---

# 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.cxcloud.com/guides/application-development/create-a-git-repository.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.
