Metadata-Version: 2.4
Name: neoprophet
Version: 1.6.0
Summary: Prophet forecasting that is easier to use, clearer to read and faster at scale
Author-email: "Sean J. Taylor" <sjtz@pm.me>, Ben Letham <bletham@fb.com>
Maintainer: Behnam
License: MIT
Project-URL: Homepage, https://github.com/CodeWithBehnam/NeoProphet
Project-URL: Repository, https://github.com/CodeWithBehnam/NeoProphet
Project-URL: Issues, https://github.com/CodeWithBehnam/NeoProphet/issues
Project-URL: Upstream documentation, https://facebook.github.io/prophet/
Keywords: forecasting,time series,prophet,stan,mlx
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cmdstanpy>=1.0.4
Requires-Dist: numpy>=1.21.6
Requires-Dist: matplotlib>=3.5.3
Requires-Dist: pandas>=1.3.5
Requires-Dist: holidays<1,>=0.25
Requires-Dist: tqdm>=4.63.2
Provides-Extra: dev
Requires-Dist: setuptools>=64; extra == "dev"
Requires-Dist: wheel; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: jupyterlab; extra == "dev"
Requires-Dist: nbconvert; extra == "dev"
Requires-Dist: plotly; extra == "dev"
Requires-Dist: pyrefly==0.50.0; extra == "dev"
Requires-Dist: ipykernel; extra == "dev"
Requires-Dist: ipywidgets; extra == "dev"
Provides-Extra: mlx
Requires-Dist: mlx>=0.32.3; (sys_platform == "darwin" and platform_machine == "arm64") and extra == "mlx"
Provides-Extra: parallel
Requires-Dist: dask[dataframe]; extra == "parallel"
Requires-Dist: distributed; extra == "parallel"
Provides-Extra: optuna
Requires-Dist: optuna>=5.0; extra == "optuna"
Dynamic: license-file

# NeoProphet

**Prophet forecasting that is easier to use, clearer to read and faster at scale.**

NeoProphet is a drop-in fork of [Facebook Prophet](https://github.com/facebook/prophet) with a one-call API, self-explaining charts, built-in tuning and an experimental Apple Silicon GPU backend for fitting many series at once.

![A NeoProphet forecast with history and forecast zones, changepoint callouts and a plain-English title](https://raw.githubusercontent.com/CodeWithBehnam/NeoProphet/main/.github/assets/forecast.png)

## Install

```bash
pip install neoprophet            # or: uv add neoprophet
pip install "neoprophet[mlx]"     # adds the MLX backend on Apple Silicon
```

NeoProphet installs the `prophet` import package, so it replaces upstream Prophet: uninstall `prophet` first and do not install both in one environment. Wheels include the compiled Stan model for macOS (Intel and Apple Silicon), Linux (x86-64 and ARM64) and Windows.

## Quick start

```python
import pandas as pd
from prophet import forecast

df = pd.read_csv("https://raw.githubusercontent.com/CodeWithBehnam/NeoProphet/main/examples/example_wp_log_peyton_manning.csv")
result = forecast(df, horizon="12 months", country_holidays="US")
result.forecast            # ds, yhat, yhat_lower, yhat_upper for the future
result.plot()              # the chart above
result.plot_components()   # trend, holidays, weekly and yearly patterns
```

- `forecast(..., tune=True)` chooses the prior scales and seasonality mode by parallel cross-validation.
- `forecast(..., tune="optuna")` searches ranges for the two prior scales, and both seasonality modes, with Optuna instead (`pip install "neoprophet[optuna]"`). The Optuna study is `result.tuning.study`. For your own ranges, call `prophet.tune(df, param_grid=..., search="optuna", n_trials=40)` with `FloatRange` and `IntRange`.
- `prophet.mlx_backend.fit_many(dfs)` fits many series in one batch on an Apple Silicon GPU (experimental; linear and flat growth, MAP only).
- The classic API is unchanged: `from prophet import Prophet` works as before.

## Links

- Source, benchmarks and notebooks: https://github.com/CodeWithBehnam/NeoProphet
- Issues: https://github.com/CodeWithBehnam/NeoProphet/issues
- Upstream Prophet documentation: https://facebook.github.io/prophet/
- Paper: Taylor and Letham (2018), *Forecasting at Scale*, The American Statistician 72(1):37-45.

Released under the MIT licence. Prophet was created by Sean J. Taylor and Ben Letham at Facebook.
