Metadata-Version: 2.4
Name: netstate
Version: 0.1.0
Summary: Windows network and system snapshot collector
Author: Imon Mallik
License: MIT
Keywords: network,system-info,windows,ip,network-monitoring
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Operating System :: Microsoft :: Windows
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Topic :: System :: Networking
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: License.md
Requires-Dist: requests>=2.0
Dynamic: license-file

# NetState

NetState is a Python package for collecting structured system and
network information on Windows machines.

It provides a clean API to retrieve:

-   Operating system details
-   Active private network adapter information
-   Public IP and ISP information
-   JSON-serializable network snapshots

This package is intended to be used as a **library**, not a standalone
application.

------------------------------------------------------------------------

## Installation

After publishing to PyPI:

``` bash
pip install netstate
```

For local development:

``` bash
pip install -e .
```

------------------------------------------------------------------------

## Basic Usage

``` python
from netstate.network_info import get_network_info

snapshot = get_network_info()

print(snapshot.system)
print(snapshot.private_network)
print(snapshot.public_network)
```

------------------------------------------------------------------------

## JSON Output

``` python
from netstate.network_info import get_network_info_json

json_output = get_network_info_json()
print(json_output)
```

------------------------------------------------------------------------

## Returned Data Structure

`get_network_info()` returns a `NetStateSnapshot` dataclass containing:

-   platform (str)
-   system (SystemData)
-   private_network (List\[NetworkData\] \| None)
-   public_network (PublicNetworkData \| None)
-   record_time (datetime)

All models are defined using Python dataclasses.

------------------------------------------------------------------------

## Requirements

-   Python 3.9+
-   Windows OS
-   requests

------------------------------------------------------------------------

## Design Goals

-   Clean modular architecture
-   Structured dataclass models
-   Graceful failure handling
-   Easy JSON serialization
-   Extensible collector design

------------------------------------------------------------------------

## License

MIT License

------------------------------------------------------------------------

## Author

Imon Mallik
