# Development

<figure><img src="/files/QHiLdbepm0xAVytSE2gs" alt=""><figcaption></figcaption></figure>

At AANN.ai Labs, we prioritize a streamlined and efficient development process to ensure the delivery of high-quality software solutions.

**A private GitLab repository fortified with Continuous Integration/Continuous Deployment**:

* (CI/CD) pipelines
* Automatic code build feature, streamlining the development process
* Automatic static code analysis to maintain code quality and identify potential issues
* Automatic unit testing for prompt detection and resolution of errors
* Automatic deployment to various environments in Kubernetes

#### Kubernetes (K8S), a docker orchestration system:

* Seamless deployment to any cloud or bare-metal host
* Blue/Green deployment strategy for reduced downtime and risk
* Automatic microservices scaling to manage high load conditions
* Automatic load balancing for optimal distribution of network traffic
* Log collection for simplified troubleshooting and system monitoring

#### A comprehensive code base:

* A Web3 connector microservice that provides a secure connection to any EVM blockchain, enabling method calls and smart contract event subscriptions
* A user management microservice offering user registration, authorization, and data storage
* A Gateway (watchdog) microservice, facilitating communication between microservices and user connections
* Swagger implemented for automatic API documentation
* Each microservice is fortified with security systems, equipped with a request cache, and connected to its own database

#### The development process is divided across three environments:

* Staging for on-going development and Research & Development (R\&D) activities
* Testing for Quality Assurance (QA) and demo of new features
* Production as a ready-to-use environment

#### Development practices at AANN.ai Labs:

* We adhere to a robust Software Development Life Cycle (SDLC), with all code undergoing cross code review
* Our team follows the SCRUM development methodology, promoting iterative progress and flexibility
* We employ unit tests for our code to ensure its functional integrity
* We abide by Object-Oriented Programming (OOP) and SOLID principles to deliver maintainable and scalable code


---

# 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://aann-ai.gitbook.io/social-authenticity-network/aann.ai-lab/development.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.
