# Tech stack

## Introduction

Leveraging a combination of proven technologies and innovative solutions, our tech stack is curated to provide a comprehensive, flexible environment for developing, deploying, and managing our products.&#x20;

## Overview

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

### Presentation Layer

Our user interface combines the power of PrimeVue for feature-rich UI components, Tailwind for styling, and Vue.js for building a progressive and interactive user experience.

### Business Logic

Laravel is a PHP framework known for its elegant syntax and robust features. Combined with Nuxt -  an open source framework based on Vue.js, Nitro, and Vite - we have a solid foundation for server-side rendering and seamless navigation.

### DevOps & Deployment

We leverage the agility and scalability of Amazon Web Services (AWS) for cloud infrastructure, Vercel for seamless deployment and hosting, Kubernetes for container orchestration, and Argo for managing and automating workflows.

### Development Tools

Our development process utilises TypeScript for type safety, PHPUnit for comprehensive testing, NPM for efficient package management, and Docker for containerisation.

### Data Management

We use MariaDB and MySQL for relational database management, Elasticsearch for powerful search and analytics, and Redis for high-performance caching and data storage.


---

# 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://doc.wearepatchworks.com/product-documentation/getting-started/technical-overview/tech-stack.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.
