Metadata-Version: 2.4
Name: syntropos
Version: 0.0.1
Summary: Computational engine for holistic spatiotemporal modeling and Geospatial Exploration Ecosystems.
Author-email: Nicolás Pinel <npinelp@eafit.edu.co>
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: GIS
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: rich>=13.0.0
Requires-Dist: rich-argparse>=1.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: rasterio>=1.3.0
Dynamic: license-file

# Syntropos

**Computational engine for holistic spatiotemporal modeling and Geospatial Exploration Ecosystems (EEGs).**

---

## I. Philosophy: The Living Territory

Traditional geographic information systems often treat the earth as a sterile, static grid—a mere receptacle for abiotic data. However, a territory is not a flat map; it is a highly organized, accumulating intersection of space, time, climate, and soil.

**Syntropos** (derived from *Syntropy*, the tendency towards organized complexity, and *Topos*, place) is the foundational software architecture designed to ingest chaotic, multi-terabyte streams of raw Earth observation data and distill them into highly structured, 4D spatiotemporal knowledge.

The engine provides the mathematical and computational rigor necessary to understand a territory holistically—modeling the macro-climatic teleconnections that drive local weather alongside the micro-topographic variations that dictate soil health, hydrology, and biological succession.

### Core Pillars
* **The Territory as a Dynamic Continuum:** Syntropos rejects the isolation of spatial variables. It treats the territory as a teleconnected bioregion where every pixel interacts with its neighbors.
* **Spatiotemporal Succession:** Inspired by syntropic agriculture, the system treats time as the primary driver of complexity. It builds continuous, deeply indexed time-series data cubes to track the evolution of the landscape.
* **Mathematical Rigor:** Absolute spatial immutability. Through strict adherence to nested coordinate reference systems (like the COLGRID-9377 grid) and bitwise reduction algorithms, the engine preserves biological data integrity at the sub-pixel level.

---

## II. Architecture: Decoupled by Design

Syntropos is engineered as a purely agnostic computational core, entirely decoupled from the geography it analyzes.

1.  **The Engine (`syntropos`):** A universally deployable Python package. It handles STAC metadata parsing, lazy-loaded virtual raster reprojections, coordinate transformations, and statistical modeling. It is blind to specific regions, knowing only physics, math, and data structures.
2.  **The Node (e.g., OSESA):** The regional implementation. A node (like the *Observatorio de Suelos y Ecosistemas del Suroeste Antioqueño*) provides the boundaries, the local configuration (`config.yml`), and the domain-specific research questions.

---

## III. Technical Features

* **Cloud-Optimized:** Generates Cloud Optimized GeoTIFFs (COGs) with Zstandard (ZSTD) compression for high-performance I/O and web-native serving.
* **Grid Alignment:** Forced pixel alignment to regional nested grids, preventing fractional drift during reprojection.
* **Intelligent Mosaicing:** Implements bitwise OR operations for categorical quality masks (Fmask) to ensure the most conservative and accurate cloud/shadow detection in overlapping satellite swaths.
* **Lazy Execution:** Uses `rasterio` Virtual Raster Tables (VRTs) to minimize memory footprints when processing regional-scale daily mosaics.

---

## IV. Installation

```bash
pip install syntropos
