From d80af69f12df6727548217587a8479418bdef378 Mon Sep 17 00:00:00 2001 From: Jacob Bryan Date: Wed, 22 Jul 2026 14:51:02 -0600 Subject: [PATCH] updates package metadata for PyPI distribution --- README.md | 25 ++++++++++++++++++++----- docs/getting_started.md | 2 +- pyproject.toml | 39 ++++++++++++++++++++++++++++++++++++++- uv.lock | 2 +- 4 files changed, 60 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index c4ae6b3..6647a4d 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,28 @@ # DCAF - The Discounted Cashfow Analysis Framework is a - professional financial engineering library for nuclear energy project cost and - metric calculations, with a focus on Extended Power Uprate (EPU) projects. +The Discounted Cash Flow Analysis Framework is a professional financial engineering +library for nuclear energy project cost and metric calculations, with a focus on +Extended Power Uprate (EPU) projects. + +## Installation + +Install the `dcaf-idaholab` distribution from PyPI: + +```bash +uv add dcaf-idaholab +# or: pip install dcaf-idaholab +``` + +The Python import package remains `dcaf`: + +```python +from dcaf import EnergyProject +``` ## Overview -DCAF provides high-fidelity cost modeling and financial analyis tools -specifcally designed for nuclear energy projects. The library enables detailed +DCAF provides high-fidelity cost modeling and financial analysis tools +specifically designed for nuclear energy projects. The library enables detailed financial analysis including: - Net Present Value (NPV), Discounted Cashflow (DCF) and Internal Rate of Return diff --git a/docs/getting_started.md b/docs/getting_started.md index 36b0c59..555a990 100644 --- a/docs/getting_started.md +++ b/docs/getting_started.md @@ -23,7 +23,7 @@ it with `uv run` (e.g. `uv run python`), or activate `.venv` directly. Once DCAF is published as a package, you can instead add it to your own project: ```bash -uv add dcaf # or: pip install dcaf +uv add dcaf-idaholab # or: pip install dcaf-idaholab ``` ## 2. Build and analyze a project diff --git a/pyproject.toml b/pyproject.toml index f1bc135..779a2a2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,16 +3,53 @@ requires = ["hatchling"] build-backend = "hatchling.build" [project] -name = "dcaf" +name = "dcaf-idaholab" version = "0.1.0" description = "Discounted Cashflow Analysis Framework is a financial engineering library for nuclear energy projects." readme = "README.md" requires-python = ">=3.11" +license = "MIT" +authors = [ + {name = "Dylan J. McDowell"}, + {name = "Jacob A Bryan"}, + {name = "Caleb M Sitton"}, + {name = "Gabriel J Soto Gonzalez"}, + {name = "Nahuel Guaita"}, + {name = "Paul W Talbot"}, +] +maintainers = [ + {name = "Idaho National Laboratory"}, +] +keywords = [ + "discounted cash flow", + "financial engineering", + "nuclear energy", + "techno-economic analysis", + "extended power uprate", +] +classifiers = [ + "Development Status :: 4 - Beta", + "Intended Audience :: Science/Research", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3 :: Only", + "Topic :: Office/Business :: Financial", + "Topic :: Scientific/Engineering", +] dependencies = [ "python-dateutil>=2.9.0.post0", "types-python-dateutil>=2.9.0.20260302", ] +[project.urls] +Homepage = "https://github.com/IdahoLabResearch/DCAF" +Documentation = "https://github.com/IdahoLabResearch/DCAF/tree/main/docs" +Repository = "https://github.com/IdahoLabResearch/DCAF.git" +Issues = "https://github.com/IdahoLabResearch/DCAF/issues" + +[tool.hatch.build.targets.wheel] +packages = ["dcaf"] + [dependency-groups] all = [ diff --git a/uv.lock b/uv.lock index 7eed170..99dee80 100644 --- a/uv.lock +++ b/uv.lock @@ -444,7 +444,7 @@ toml = [ ] [[package]] -name = "dcaf" +name = "dcaf-idaholab" version = "0.1.0" source = { editable = "." } dependencies = [