Metadata-Version: 2.4
Name: flint-core
Version: 0.4.4
Summary: A minimalist, agnostic Python framework to standardize data engineering pipelines.
License: MIT
License-File: LICENSE
Keywords: data-engineering,pyspark,pandas,data-catalog
Author: idperez720
Author-email: ivandavidperez4@gmail.com
Requires-Python: >=3.11,<4.0.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Provides-Extra: aws
Provides-Extra: azure
Provides-Extra: bigquery
Provides-Extra: databricks
Provides-Extra: delta
Provides-Extra: gcp
Provides-Extra: iceberg
Provides-Extra: jdbc
Provides-Extra: mysql
Provides-Extra: odbc
Provides-Extra: pandas
Provides-Extra: postgres
Provides-Extra: snowflake
Provides-Extra: spark
Provides-Extra: sqlite
Requires-Dist: adlfs (>=2024.10.0) ; extra == "azure"
Requires-Dist: click (>=8.4.1,<9.0.0)
Requires-Dist: databricks-sql-connector (>=4.3.0,<5.0.0) ; extra == "databricks"
Requires-Dist: deltalake (>=1.6.1,<2.0.0) ; extra == "delta"
Requires-Dist: gcsfs (>=2024.10.0) ; extra == "gcp"
Requires-Dist: jaydebeapi (>=1.2.3,<2.0.0) ; extra == "jdbc"
Requires-Dist: pandas (>=3.0.3,<4.0.0) ; extra == "pandas"
Requires-Dist: pandas-gbq (>=0.35.0,<0.36.0) ; extra == "bigquery"
Requires-Dist: psycopg2-binary (>=2.9.12,<3.0.0) ; extra == "postgres"
Requires-Dist: pyiceberg (>=0.11.1,<0.12.0) ; extra == "iceberg"
Requires-Dist: pyodbc (>=5.3.0,<6.0.0) ; extra == "odbc"
Requires-Dist: pyspark (>=4.1.2,<5.0.0) ; extra == "spark"
Requires-Dist: pyyaml (>=6.0.3,<7.0.0)
Requires-Dist: s3fs (>=2024.10.0) ; extra == "aws"
Requires-Dist: snowflake-connector-python (>=4.6.0,<5.0.0) ; extra == "snowflake"
Requires-Dist: sqlalchemy (>=2.0.51,<3.0.0) ; extra == "databricks"
Requires-Dist: sqlalchemy (>=2.0.51,<3.0.0) ; extra == "mysql"
Requires-Dist: sqlalchemy (>=2.0.51,<3.0.0) ; extra == "postgres"
Requires-Dist: sqlalchemy (>=2.0.51,<3.0.0) ; extra == "sqlite"
Project-URL: Repository, https://github.com/idperez720/flint-core
Description-Content-Type: text/markdown

# Flint Core Framework 🚀

`flint` is a minimalist, agnostic framework designed to standardize data
engineering pipelines in Python. It completely eliminates environmental friction,
distributed cluster management boilerplates, and fragile absolute storage path
hardcoding.

By combining declarative metadata workflows with agnostic functional transformation
utilities, `flint` empowers data platforms to execute seamless computing workloads
safely across both Pandas and PySpark architectures.

---

## ✨ Core Features

* **Convention over Configuration**: Structure your workspace layout once using
  interactive CLI initializers, and let `flint` handle structural orchestration
  safely.
* **Decentralized Data Catalog**: Declare your platform datasets as semantic
  lookup keys inside distributed, self-contained mini-YAML manifests.
* **Multi-Environment Isolation**: Leverage recursive token interpolation and
  cascading configuration properties (`spark.yml`) to switch sandbox environments
  seamlessly.
* **Elastic Data Loading**: Load data matrices using Pandas or PySpark under the
  exact same interface. `flint` dynamically resolves filesystem boundaries
  and binds active Spark contexts automatically.
* **Agnostic Functional Suite**: Run high-performance advanced features directly on your dataframes.
  The core engine automatically resolves the appropriate optimization drivers via Inversion of
  Control.
* **Schema-Enforced Persistence Gates**: Secure storage paths via write validation
  checks that abort operations if the columns mismatch the catalog definition.

---

## 📖 Complete Documentation

For comprehensive guides, testing architecture deep-dives, and complete API references, visit our documentation site:
👉 **[Flint Core Docs](https://flint-core.readthedocs.io/en/latest/)**

---

## ⚖️ License

Distributed under the **MIT License**. Any modification or distribution (including forks) must include the original copyright notice and liability waiver. See `LICENSE` for more information.
