Water Forecast AI is a project under development focused on data analysis and water consumption forecasting using Artificial Intelligence models.
- Time series forecasting with models such as LSTM, ARIMA, and Prophet.
- Exploratory Data Analysis (EDA) and signal preprocessing.
- Evaluation metrics including MAE, RMSE, and R².
- Modular structure for reproducible ML pipelines and experiments.
- Type-safe Python code with
mypy
support. - Code formatting and linting with
ruff
. - Automated testing with
pytest
and coverage reporting. - Environment and tooling management via
uv
andpyproject.toml
.
This project uses uv
for Python environment and dependency management.
curl -LsSf https://astral.sh/uv/install.sh | sh
uv venv .venv
source .venv/bin/activate
uv pip install -e ".[dev]"
To generate a lockfile for reproducible environments:
pip-compile pyproject.toml --extra=dev --output-file=requirements.lock.txt
This ensures all dependencies (including transitive ones) are pinned and can be synced across environments with full reproducibility.
After activating the virtual environment:
pytest
With coverage report:
pytest --cov=water_forecast_ai --cov-report=term-missing
ruff check water_forecast_ai
mypy water_forecast_ai