Metadata-Version: 2.4
Name: template-nn
Version: 0.2.1
Summary: A neural network model architecture template
Author-email: Gabriel Choong Ge Liang <gabrielchoonggeliang@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/gabrielchoong/template-nn
Project-URL: Issues, https://github.com/gabrielchoong/template-nn/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: torch>=2.6.0
Requires-Dist: numpy>=1.18.0
Provides-Extra: dev
Requires-Dist: pytest>=8.3.4; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: uv; extra == "dev"
Requires-Dist: pip-tools; extra == "dev"
Dynamic: license-file

# Template NN

Template NN is a lightweight, easy-to-use library designed to streamline the learning process of machine learning. It aims to provide a more opinionated interface while maintaining full compatibility with any existing PyTorch code.

Huge thanks to the [PyTorch](https://github.com/pytorch/pytorch) team for enabling projects like this.

## Purpose

Initially developed for my thesis to simplify the codebase, but evolved to a library with a declarative interface for testing and benchmarking neural networks.

The classes uses shortened acronyms such as `CNN` for *Convolution Neural Network* with single line instantiation to better focus on the learning aspect of ML.

## Installation

Install this library from PyPI:

```sh
pip install template-nn
```

Clone the repository and install it locally for development:

```sh
git clone https://github.com/gabrielchoong/template-nn.git
cd template-nn
```

Using `uv` (recommended):

```sh
uv venv
uv sync
```

Using `pip` (not recommended for contributing):

```sh
pip install -r requirements.txt
pip install .
```

## Releases and Contributing

See [changelog](CHANGELOG.md) for previous changes. Expect breaking changes at this stage.

See [contributing](CONTRIBUTING.md) if you wish to contribute to this project.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
