networka


Namenetworka JSON
Version 0.1.10 PyPI version JSON
download
home_pageNone
SummaryModern Python cli toolkit for network device automation
upload_time2025-09-01 08:46:40
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseApache-2.0
keywords async automation cli infrastructure mikrotik narrowin network networking routeros
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center"><img src="https://raw.githubusercontent.com/narrowin/networka/main/docs/assets/images/networka.png" alt="Networka Logo" width="320"/>

  <p><a href="https://narrowin.github.io/networka/">Full documentation →</a></p>
</div>

<br/>

**Networka: `Eierlegende Wollmilchsau` of network operations — optimized for your daily workflows.**

[![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-blue.svg)](https://www.python.org/downloads/)
[![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20Windows-lightgrey.svg)](https://github.com/narrowin/networka)
[![License: Apache-2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
[![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)
[![Type checked with mypy](https://img.shields.io/badge/mypy-checked-blue.svg)](http://mypy-lang.org/)
[![CI](https://github.com/narrowin/networka/actions/workflows/ci.yml/badge.svg)](https://github.com/narrowin/networka/actions/workflows/ci.yml)
[![Docs](https://img.shields.io/github/actions/workflow/status/narrowin/networka/docs.yml?label=Docs&logo=github)](https://narrowin.github.io/networka/)

Networka is a modern CLI tool for automating network devices across multiple vendors. Designed for network engineers who want fast, scalable automation with full cross-platform support.

Built entirely with Sonett 4 and GPT-5, this is an agent-mode experiment that turned into something genuinely useful.

---

## _The Networka Monologue_

_“People ask the question…_ <br>
**what’s a Networka?** <br>

And I tell 'em — <br>
it's **not** about cables, configs, and pings. <br>
_Oh no._ <br>
There’s more to it than that, my friend. <br>

We all like a bit of the good life — <br>
some the uptime, some the security, <br>
others the automation, the visibility, or the compliance. <br>

But a **Networka**, oh, they're different. <br>
Why? <br>
Because a real **Networka** wants the f\*ing lot.”<br><br>
(inspired by: [RockNRolla](https://www.youtube.com/watch?v=s4YLBqMJYOo))

## Getting Started

- Installation: see the docs → https://narrowin.github.io/networka/getting-started/
- Platform compatibility → https://narrowin.github.io/networka/platform-compatibility/
- Shell completion → https://narrowin.github.io/networka/shell-completion/
- CLI reference → https://narrowin.github.io/networka/reference/cli/
- API reference → https://narrowin.github.io/networka/reference/api/

## Features

### **Core Capabilities**

- **Multi-vendor network automation**: Native support for MikroTik RouterOS, Cisco IOS/IOS-XE/NX-OS, Arista EOS, Juniper JunOS, and more
- **Scalable device management**: Execute commands across individual devices or groups
- **Cross-platform compatibility**: Full support for Linux, macOS, and Windows environments
- **Flexible configuration**: YAML and CSV configuration options with powerful device tagging and grouping

### **Operational Features**

- **Command execution**: Run single commands or predefined sequences across devices and groups
- **File management**: Upload/download files to/from network devices with verification and error handling
- **Device backup**: Automated configuration and comprehensive backups with vendor-specific implementations
- **Firmware management**: Upgrade, downgrade, and BIOS operations with platform validation
- **SSH session management**: Direct SSH access with tmux integration for interactive sessions

### **Advanced Features**

- **Intelligent completions**: Context-aware shell completions for devices, groups, and sequences
- **Vendor-aware sequences**: Predefined command sets optimized for different network platforms
- **Results management**: Organized storage with multiple output formats and automatic timestamping
- **Configuration validation**: Schema-based validation with detailed error reporting
- **Credential management**: Secure credential handling via environment variables with device-specific overrides

### **Developer & Integration Features**

- **Type safety**: Full mypy type checking for reliability and maintainability
- **Modern architecture**: Built with scalable scrapli and nornir support
- **Extensible design**: Plugin-friendly architecture for adding new vendors and operations
- **Rich output**: Professional CLI interface with color coding and structured information display

## Installation

### System Requirements

- **Operating System**: Linux, macOS, or Windows
- **Python**: 3.11, 3.12, or 3.13
- **Network Access**: SSH connectivity to target devices
- **Package Manager**: uv (recommended) or pip

### Quick Install (recommended)

Not on PyPI yet — install from GitHub.

```bash
# Recommended (isolated, user-wide)
uv tool install git+https://github.com/narrowin/networka.git

# Alternative
pipx install git+https://github.com/narrowin/networka.git

# Verify installation
nw --help
```

#### If `nw` is not found

- Check: `command -v nw` (Linux/macOS) or `where nw` (Windows)
- If using pipx: ensure PATH is set, then reload shell
  ```bash
  pipx ensurepath
  exec $SHELL
  ```
- Linux/macOS: add user bin to PATH if needed
  ```bash
  echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc  # or ~/.zshrc
  exec $SHELL
  ```
- Windows (native, best-effort): prefer WSL2; if native, run `pipx ensurepath` and restart the terminal

More → PATH troubleshooting: https://narrowin.github.io/networka/troubleshooting/#path-nw-not-found

### Upgrade & Remove

```bash
# Upgrade to latest version (from GitHub)
uv tool install --force git+https://github.com/narrowin/networka.git
# or
pipx install --force git+https://github.com/narrowin/networka.git

# Remove installation
uv tool uninstall nw
# or
pipx uninstall networka
```

### Platform-Specific Notes

**Linux/macOS**: No additional dependencies required

**Windows**: Scrapli (the default transport) does not officially support native Windows. While it may work with Paramiko or ssh2-python drivers, the recommended approach is to run Networka on WSL2 (Ubuntu) for a fully supported POSIX environment. Native Windows usage is best-effort.

WSL2 quickstart (recommended):

```bash
# In Ubuntu on WSL2
curl -LsSf https://astral.sh/uv/install.sh | sh
exec $SHELL
uv tool install git+https://github.com/narrowin/networka.git
nw --help
```

Details → https://narrowin.github.io/networka/platform-compatibility/#wsl2-quickstart-recommended

## Quick Start

Get up and running with config init command:

```bash
# Initialize in default location with interactive prompts
nw config init

```

### One-liners (no config)

Run directly against an IP without creating files. `--platform` selects the network OS driver; `--interactive-auth` prompts for credentials.

```bash
# MikroTik RouterOS
nw run --platform mikrotik_routeros 192.0.2.10 "/system/identity/print" --interactive-auth
```

```bash
# Cisco IOS-XE
nw run --platform cisco_iosxe 198.51.100.20 "show version" --interactive-auth
```

## Terminology: device_type vs hardware platform vs transport

- device_type: Network OS driver used for connections and commands (Scrapli "platform"). Examples: mikrotik_routeros, cisco_iosxe, arista_eos, juniper_junos.
- platform (hardware/firmware): Hardware architecture used for firmware-related operations (x86, x86_64, arm, mipsbe, tile).
- transport: Connection backend. Default is scrapli.

Note: When targeting IPs directly, `--platform` refers to the network driver (device_type), not hardware architecture.

## Quick links

- Getting started → https://narrowin.github.io/networka/getting-started/
- Running commands → https://narrowin.github.io/networka/running-commands/
- Configuration → https://narrowin.github.io/networka/configuration/
- Environment variables → https://narrowin.github.io/networka/environment-variables/
- Results → https://narrowin.github.io/networka/results/
- Output modes → https://narrowin.github.io/networka/output-modes/
- Backups → https://narrowin.github.io/networka/backups/
- CLI reference → https://narrowin.github.io/networka/reference/cli/
- API reference → https://narrowin.github.io/networka/reference/api/

## CLI overview

- For current usage and commands, see the CLI reference:
  - https://narrowin.github.io/networka/reference/cli/
  - Quick checks: `nw --help` and `nw --version`

## Community & support

- Visit our [documentation](https://narrowin.github.io/networka/) for detailed guides and examples
- Create [GitHub Issues](https://github.com/narrowin/networka/issues) for bug reports and feature requests
- See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines
- Check [SECURITY.md](SECURITY.md) for security policy and reporting vulnerabilities

## Contributing

Have a look through existing [Issues](https://github.com/narrowin/networka/issues) and [Pull Requests](https://github.com/narrowin/networka/pulls) that you could help with. If you'd like to request a feature or report a bug, please create a GitHub Issue using one of the templates provided.

[See contribution guide →](CONTRIBUTING.md)

## Documentation

- Docs Home → https://narrowin.github.io/networka/
- Platform Compatibility → https://narrowin.github.io/networka/platform-compatibility/
- Development Guide → https://narrowin.github.io/networka/development/
- Multi-Vendor Support → https://narrowin.github.io/networka/multi-vendor-support/
- IP Address Support → https://narrowin.github.io/networka/ip-address-support/
- Transport Selection → https://narrowin.github.io/networka/transport/
- Environment Variables → https://narrowin.github.io/networka/environment-variables/
- File Upload Guide → https://narrowin.github.io/networka/file_upload/
- Interactive Credentials → https://narrowin.github.io/networka/interactive-credentials/

## License

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

## Acknowledgments

- [Scrapli](https://github.com/carlmontanari/scrapli) - Network device connections
- [Nornir](https://github.com/nornir-automation/nornir) - Network automation framework
- [Netmiko](https://github.com/ktbyers/netmiko) - Multi-vendor CLI connections to network devices
- [Typer](https://github.com/tiangolo/typer) - CLI framework
- [Pydantic](https://github.com/pydantic/pydantic) - Data validation
- [Rich](https://github.com/Textualize/rich) - Terminal formatting

---

_Built for network engineers who value clean, reliable automation_

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "networka",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": "narrowin <contact@narrowin.com>",
    "keywords": "async, automation, cli, infrastructure, mikrotik, narrowin, network, networking, routeros",
    "author": null,
    "author_email": "narrowin <contact@narrowin.com>",
    "download_url": "https://files.pythonhosted.org/packages/cf/39/0f074992be5f0758d21b62c3ee5e68fe768a66ae6ee0d5f29ba4b5d6861d/networka-0.1.10.tar.gz",
    "platform": null,
    "description": "<div align=\"center\"><img src=\"https://raw.githubusercontent.com/narrowin/networka/main/docs/assets/images/networka.png\" alt=\"Networka Logo\" width=\"320\"/>\n\n  <p><a href=\"https://narrowin.github.io/networka/\">Full documentation \u2192</a></p>\n</div>\n\n<br/>\n\n**Networka: `Eierlegende Wollmilchsau` of network operations \u2014 optimized for your daily workflows.**\n\n[![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-blue.svg)](https://www.python.org/downloads/)\n[![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20Windows-lightgrey.svg)](https://github.com/narrowin/networka)\n[![License: Apache-2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)\n[![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)\n[![Type checked with mypy](https://img.shields.io/badge/mypy-checked-blue.svg)](http://mypy-lang.org/)\n[![CI](https://github.com/narrowin/networka/actions/workflows/ci.yml/badge.svg)](https://github.com/narrowin/networka/actions/workflows/ci.yml)\n[![Docs](https://img.shields.io/github/actions/workflow/status/narrowin/networka/docs.yml?label=Docs&logo=github)](https://narrowin.github.io/networka/)\n\nNetworka is a modern CLI tool for automating network devices across multiple vendors. Designed for network engineers who want fast, scalable automation with full cross-platform support.\n\nBuilt entirely with Sonett 4 and GPT-5, this is an agent-mode experiment that turned into something genuinely useful.\n\n---\n\n## _The Networka Monologue_\n\n_\u201cPeople ask the question\u2026_ <br>\n**what\u2019s a Networka?** <br>\n\nAnd I tell 'em \u2014 <br>\nit's **not** about cables, configs, and pings. <br>\n_Oh no._ <br>\nThere\u2019s more to it than that, my friend. <br>\n\nWe all like a bit of the good life \u2014 <br>\nsome the uptime, some the security, <br>\nothers the automation, the visibility, or the compliance. <br>\n\nBut a **Networka**, oh, they're different. <br>\nWhy? <br>\nBecause a real **Networka** wants the f\\*ing lot.\u201d<br><br>\n(inspired by: [RockNRolla](https://www.youtube.com/watch?v=s4YLBqMJYOo))\n\n## Getting Started\n\n- Installation: see the docs \u2192 https://narrowin.github.io/networka/getting-started/\n- Platform compatibility \u2192 https://narrowin.github.io/networka/platform-compatibility/\n- Shell completion \u2192 https://narrowin.github.io/networka/shell-completion/\n- CLI reference \u2192 https://narrowin.github.io/networka/reference/cli/\n- API reference \u2192 https://narrowin.github.io/networka/reference/api/\n\n## Features\n\n### **Core Capabilities**\n\n- **Multi-vendor network automation**: Native support for MikroTik RouterOS, Cisco IOS/IOS-XE/NX-OS, Arista EOS, Juniper JunOS, and more\n- **Scalable device management**: Execute commands across individual devices or groups\n- **Cross-platform compatibility**: Full support for Linux, macOS, and Windows environments\n- **Flexible configuration**: YAML and CSV configuration options with powerful device tagging and grouping\n\n### **Operational Features**\n\n- **Command execution**: Run single commands or predefined sequences across devices and groups\n- **File management**: Upload/download files to/from network devices with verification and error handling\n- **Device backup**: Automated configuration and comprehensive backups with vendor-specific implementations\n- **Firmware management**: Upgrade, downgrade, and BIOS operations with platform validation\n- **SSH session management**: Direct SSH access with tmux integration for interactive sessions\n\n### **Advanced Features**\n\n- **Intelligent completions**: Context-aware shell completions for devices, groups, and sequences\n- **Vendor-aware sequences**: Predefined command sets optimized for different network platforms\n- **Results management**: Organized storage with multiple output formats and automatic timestamping\n- **Configuration validation**: Schema-based validation with detailed error reporting\n- **Credential management**: Secure credential handling via environment variables with device-specific overrides\n\n### **Developer & Integration Features**\n\n- **Type safety**: Full mypy type checking for reliability and maintainability\n- **Modern architecture**: Built with scalable scrapli and nornir support\n- **Extensible design**: Plugin-friendly architecture for adding new vendors and operations\n- **Rich output**: Professional CLI interface with color coding and structured information display\n\n## Installation\n\n### System Requirements\n\n- **Operating System**: Linux, macOS, or Windows\n- **Python**: 3.11, 3.12, or 3.13\n- **Network Access**: SSH connectivity to target devices\n- **Package Manager**: uv (recommended) or pip\n\n### Quick Install (recommended)\n\nNot on PyPI yet \u2014 install from GitHub.\n\n```bash\n# Recommended (isolated, user-wide)\nuv tool install git+https://github.com/narrowin/networka.git\n\n# Alternative\npipx install git+https://github.com/narrowin/networka.git\n\n# Verify installation\nnw --help\n```\n\n#### If `nw` is not found\n\n- Check: `command -v nw` (Linux/macOS) or `where nw` (Windows)\n- If using pipx: ensure PATH is set, then reload shell\n  ```bash\n  pipx ensurepath\n  exec $SHELL\n  ```\n- Linux/macOS: add user bin to PATH if needed\n  ```bash\n  echo 'export PATH=\"$HOME/.local/bin:$PATH\"' >> ~/.bashrc  # or ~/.zshrc\n  exec $SHELL\n  ```\n- Windows (native, best-effort): prefer WSL2; if native, run `pipx ensurepath` and restart the terminal\n\nMore \u2192 PATH troubleshooting: https://narrowin.github.io/networka/troubleshooting/#path-nw-not-found\n\n### Upgrade & Remove\n\n```bash\n# Upgrade to latest version (from GitHub)\nuv tool install --force git+https://github.com/narrowin/networka.git\n# or\npipx install --force git+https://github.com/narrowin/networka.git\n\n# Remove installation\nuv tool uninstall nw\n# or\npipx uninstall networka\n```\n\n### Platform-Specific Notes\n\n**Linux/macOS**: No additional dependencies required\n\n**Windows**: Scrapli (the default transport) does not officially support native Windows. While it may work with Paramiko or ssh2-python drivers, the recommended approach is to run Networka on WSL2 (Ubuntu) for a fully supported POSIX environment. Native Windows usage is best-effort.\n\nWSL2 quickstart (recommended):\n\n```bash\n# In Ubuntu on WSL2\ncurl -LsSf https://astral.sh/uv/install.sh | sh\nexec $SHELL\nuv tool install git+https://github.com/narrowin/networka.git\nnw --help\n```\n\nDetails \u2192 https://narrowin.github.io/networka/platform-compatibility/#wsl2-quickstart-recommended\n\n## Quick Start\n\nGet up and running with config init command:\n\n```bash\n# Initialize in default location with interactive prompts\nnw config init\n\n```\n\n### One-liners (no config)\n\nRun directly against an IP without creating files. `--platform` selects the network OS driver; `--interactive-auth` prompts for credentials.\n\n```bash\n# MikroTik RouterOS\nnw run --platform mikrotik_routeros 192.0.2.10 \"/system/identity/print\" --interactive-auth\n```\n\n```bash\n# Cisco IOS-XE\nnw run --platform cisco_iosxe 198.51.100.20 \"show version\" --interactive-auth\n```\n\n## Terminology: device_type vs hardware platform vs transport\n\n- device_type: Network OS driver used for connections and commands (Scrapli \"platform\"). Examples: mikrotik_routeros, cisco_iosxe, arista_eos, juniper_junos.\n- platform (hardware/firmware): Hardware architecture used for firmware-related operations (x86, x86_64, arm, mipsbe, tile).\n- transport: Connection backend. Default is scrapli.\n\nNote: When targeting IPs directly, `--platform` refers to the network driver (device_type), not hardware architecture.\n\n## Quick links\n\n- Getting started \u2192 https://narrowin.github.io/networka/getting-started/\n- Running commands \u2192 https://narrowin.github.io/networka/running-commands/\n- Configuration \u2192 https://narrowin.github.io/networka/configuration/\n- Environment variables \u2192 https://narrowin.github.io/networka/environment-variables/\n- Results \u2192 https://narrowin.github.io/networka/results/\n- Output modes \u2192 https://narrowin.github.io/networka/output-modes/\n- Backups \u2192 https://narrowin.github.io/networka/backups/\n- CLI reference \u2192 https://narrowin.github.io/networka/reference/cli/\n- API reference \u2192 https://narrowin.github.io/networka/reference/api/\n\n## CLI overview\n\n- For current usage and commands, see the CLI reference:\n  - https://narrowin.github.io/networka/reference/cli/\n  - Quick checks: `nw --help` and `nw --version`\n\n## Community & support\n\n- Visit our [documentation](https://narrowin.github.io/networka/) for detailed guides and examples\n- Create [GitHub Issues](https://github.com/narrowin/networka/issues) for bug reports and feature requests\n- See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines\n- Check [SECURITY.md](SECURITY.md) for security policy and reporting vulnerabilities\n\n## Contributing\n\nHave a look through existing [Issues](https://github.com/narrowin/networka/issues) and [Pull Requests](https://github.com/narrowin/networka/pulls) that you could help with. If you'd like to request a feature or report a bug, please create a GitHub Issue using one of the templates provided.\n\n[See contribution guide \u2192](CONTRIBUTING.md)\n\n## Documentation\n\n- Docs Home \u2192 https://narrowin.github.io/networka/\n- Platform Compatibility \u2192 https://narrowin.github.io/networka/platform-compatibility/\n- Development Guide \u2192 https://narrowin.github.io/networka/development/\n- Multi-Vendor Support \u2192 https://narrowin.github.io/networka/multi-vendor-support/\n- IP Address Support \u2192 https://narrowin.github.io/networka/ip-address-support/\n- Transport Selection \u2192 https://narrowin.github.io/networka/transport/\n- Environment Variables \u2192 https://narrowin.github.io/networka/environment-variables/\n- File Upload Guide \u2192 https://narrowin.github.io/networka/file_upload/\n- Interactive Credentials \u2192 https://narrowin.github.io/networka/interactive-credentials/\n\n## License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- [Scrapli](https://github.com/carlmontanari/scrapli) - Network device connections\n- [Nornir](https://github.com/nornir-automation/nornir) - Network automation framework\n- [Netmiko](https://github.com/ktbyers/netmiko) - Multi-vendor CLI connections to network devices\n- [Typer](https://github.com/tiangolo/typer) - CLI framework\n- [Pydantic](https://github.com/pydantic/pydantic) - Data validation\n- [Rich](https://github.com/Textualize/rich) - Terminal formatting\n\n---\n\n_Built for network engineers who value clean, reliable automation_\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Modern Python cli toolkit for network device automation",
    "version": "0.1.10",
    "project_urls": {
        "Bug Tracker": "https://github.com/narrowin/networka/issues",
        "CI/CD": "https://github.com/narrowin/networka/actions",
        "Changelog": "https://github.com/narrowin/networka/blob/main/CHANGELOG.md",
        "Documentation": "https://narrowin.github.io/networka/",
        "Homepage": "https://github.com/narrowin/networka",
        "Repository": "https://github.com/narrowin/networka.git",
        "Source Code": "https://github.com/narrowin/networka"
    },
    "split_keywords": [
        "async",
        " automation",
        " cli",
        " infrastructure",
        " mikrotik",
        " narrowin",
        " network",
        " networking",
        " routeros"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d64781631bc8fc76a7b482747c721ee9d9ac200b263aa6b6c0aa1550ce060fec",
                "md5": "ae8b6420b7617b39bae42f68d245aeaf",
                "sha256": "d3143d800388a26bc72b28edf112a6bd776298fb5cc9d22ec52d05bfd8c09b6d"
            },
            "downloads": -1,
            "filename": "networka-0.1.10-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ae8b6420b7617b39bae42f68d245aeaf",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 207524,
            "upload_time": "2025-09-01T08:46:37",
            "upload_time_iso_8601": "2025-09-01T08:46:37.800505Z",
            "url": "https://files.pythonhosted.org/packages/d6/47/81631bc8fc76a7b482747c721ee9d9ac200b263aa6b6c0aa1550ce060fec/networka-0.1.10-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cf390f074992be5f0758d21b62c3ee5e68fe768a66ae6ee0d5f29ba4b5d6861d",
                "md5": "22a8074a4855940252f9f98e082b708a",
                "sha256": "10256c78d80c4e9a9fc31eb93101986b28ff4340041a083149efe1f6c65aaa8d"
            },
            "downloads": -1,
            "filename": "networka-0.1.10.tar.gz",
            "has_sig": false,
            "md5_digest": "22a8074a4855940252f9f98e082b708a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 553769,
            "upload_time": "2025-09-01T08:46:40",
            "upload_time_iso_8601": "2025-09-01T08:46:40.585043Z",
            "url": "https://files.pythonhosted.org/packages/cf/39/0f074992be5f0758d21b62c3ee5e68fe768a66ae6ee0d5f29ba4b5d6861d/networka-0.1.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 08:46:40",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "narrowin",
    "github_project": "networka",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "networka"
}
        
Elapsed time: 0.53907s