# MASS CUDA Documentation

Welcome to the official documentation for the **MASS CUDA Library**. This guide provides comprehensive resources to help you understand, install, and develop agent-based simulations using MASS CUDA.

```{toctree}
:maxdepth: 4
:caption: navigation
:hidden:

01-getting-started/index
02-core-concepts/index
03-user-guide/index
apis/api_root
```

## Getting Started

New to MASS CUDA? Start here to set up your environment and run your first simulation.

* [Installation Guide](./01-getting-started/01-installation.md) - System requirements and build instructions.
* [Quick Start](./01-getting-started/02-quick-start.md) - A minimal boilerplate to get your simulation running on the GPU.

## Core Concepts

Understand the theoretical foundations and the system architecture that power the library.

* [MASS & MASS CUDA](./02-core-concepts/01-mass.md) - Overview of the MASS CUDA library.
* [System Architecture](./02-core-concepts/02-architecture.md) - Internal components design and relationships. 
* [Cross-Device Communication](./02-core-concepts/03-cross-device-communication.md) - Data exchange mechanisms across multiple GPUs.
* [Cross-Host Parallelism](./02-core-concepts/04-cross-host-parallelism.md) - Strategies for scaling across multiple computing nodes.

## User Guide

Detailed guides and API explanations for building robust and complex agent-based models.

* [Project Setup and Configuration](./03-user-guide/01-project-setup-and-config.md)
* [Library Initialization](./03-user-guide/02-library-initialization.md)
* [Creating Places](./03-user-guide/03-create-places.md)
* [Creating Agents](./03-user-guide/04-create-agents.md)
* [Working with Attributes](./03-user-guide/05-attributes.md)
* [Invoking Methods on GPU](./03-user-guide/06-invoking-methods.md)
* [Managing Place Neighbors](./03-user-guide/07-place-neighbors.md)
* [Agent Operations](./03-user-guide/08-agent-operations.md)
* [Downloading Attributes to Host](./03-user-guide/09-download-attributes.md)
* [Best Practices](./03-user-guide/10-best-practices.md) - Performance optimization and troubleshooting.

## API Documentation

The complete documentation for all the public APIs provided by the MASS CUDA library

* {doc}`API Documentation <apis/api_root>`