Metadata-Version: 2.4
Name: nest-client
Version: 0.2.0b3
Summary: A Python-based client for the NEST Server
Author: Dennis Terhorst, Jochen M. Eppler, Sebastian Spreizer
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Education
Classifier: Topic :: Scientific/Engineering
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
Requires-Dist: requests>=2.34
Requires-Dist: werkzeug>=3.1
Requires-Dist: nest-server>=3.0.0b4 ; extra == 'server'
Maintainer: Dennis Terhorst
Maintainer-email: Dennis Terhorst <d.terhorst@fz-juelich.de>
Requires-Python: >=3.10
Project-URL: homepage, https://nest-simulator.org
Project-URL: repository, https://github.com/nest/nest-client
Project-URL: documentation, https://nest-simulator.readthedocs.io
Provides-Extra: server
Description-Content-Type: text/markdown

# NEST Client -- A client for the NEST Server

The easiest way to interact with the NEST Server is the NEST Client. It can be
used either by directly starting a Python session in a clone of that repository,
or by installing it by `pip` install therein. NEST Simulator itself does not
have to be installed in order to use the NEST Client.

Using a dynamic function mapping mechanism, the NEST Client supports the same
functions as PyNEST does. However, instead of directly executing calls in NEST,
it forwards them together with their arguments to the NEST Server, which in turn
executes them. To you as a user, everything looks much like a typical simulation
code for NEST Simulator.

### Basic usage

To give you an idea of the usage, the following table shows a comparison of a
typical simulation once for PyNEST and once using the NEST Client.

The client can be installed with this command:

```
pip install nest-client
```

The directory `examples` holds some examples that demonstrate the usage of the
client.

- For API calls:

  ```
  python ./examples/api_example.py
  ```

- For exec call:

  ```
  python ./examples/exec_example.py
  ```

### Development mode

We recommend to use virtual environment, e.g. with `uv`:

Install `nest-client` as an editable package

```
uv pip install -e .
```

#### Test against multiple Python versions using uv

```
make test-all
```

### References

- [Documentation](https://nest-simulator.readthedocs.io/en/latest/interface_nest/nest_server.html#the-nest-client)
- [NEST Simulator](http://nest-simulator.org) via its REST-based interface
- [NEST Server](https://nest-simulator.readthedocs.io/en/latest/interface_nest/nest_server.html)
