Metadata-Version: 2.4
Name: scaldys-project
Version: 0.12.0
Summary: A modular build system for Python projects targeting Windows.
Author-email: Scaldys <scaldys@scaldys.net>
Classifier: Programming Language :: Python
Classifier: Operating System :: Microsoft :: Windows
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.13
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: rich>=15.0.0
Requires-Dist: typer>=0.25.0
Provides-Extra: cython
Requires-Dist: cython>=3.2.4; extra == "cython"
Requires-Dist: setuptools>=82.0.1; extra == "cython"
Provides-Extra: windows
Requires-Dist: pyinstaller>=6.20.0; extra == "windows"
Provides-Extra: docs
Requires-Dist: sphinx>=9.1.0; extra == "docs"
Requires-Dist: sphinx-rtd-theme>=3.1.0; extra == "docs"
Dynamic: license-file

# scaldys-project

`scaldys-project` automates the complete Windows distribution pipeline for
Python projects. A single command takes your source code through Sphinx
documentation, optional Cython compilation, and — depending on the chosen
deployment mode — one of three distribution strategies:

- **pyinstaller** (default) — PyInstaller exe + Inno Setup installer
- **pyruntime** — binary wheel + Inno Setup installer with a managed Python
  runtime (for apps that coexist with Quarto/Jupyter)
- **wheel_only** — binary wheel only, no installer (for pip-installable apps)

If you are starting a new project,
[scaldys-template](https://github.com/scaldys/scaldys-template) provides a
ready-to-use project scaffold with `scaldys-project` already integrated:
packaging scripts, Sphinx documentation, CI/CD workflows, and a working
`scaldys-project.toml`.

For a full guide on using and integrating `scaldys-project` in your project, see
the [user documentation](https://github.com/scaldys/scaldys-project).

---

## Development

This section is for contributors working on `scaldys-project` itself.

Project repository and issue tracker: https://github.com/scaldys/scaldys-project

### Quick start

```bash
git clone https://github.com/scaldys/scaldys-project.git
cd scaldys-project
uv sync --group dev
uv run pytest
uv run ruff check src tests && uv run pyright
```

### Further reading

The manual's Developers section covers everything else a contributor needs:

- [Architecture](docs/manual/source/developers/architecture.rst) — module
  layout, three-class composition pattern, execution flow, configuration
  loading, and why `compile_runner.py` runs as a subprocess
- [Extension Points](docs/manual/source/developers/extension_points.rst) —
  design conventions and how to add Cython modules, build steps, or a new
  platform builder
- [Contributing](docs/manual/source/developers/contributing.rst) — linting, type
  checking, building docs, versioning, and publishing
