{ "info": { "author": "Frode Holmer", "author_email": "fholmer+netdef@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: System :: Monitoring", "Topic :: System :: Networking :: Monitoring" ], "description": "Netdef\n======\n\n* Documentation: https://netdef.readthedocs.io/en/latest/\n* Bitbucket: https://bitbucket.org/fholmer/netdef\n* GitHub: https://github.com/fholmer/netdef\n* PyPI: https://pypi.org/project/netdef/\n* License: GNU Lesser General Public License v3 or later (LGPLv3+)\n\nSummary\n-------\n\nAn application framework with built-in drivers (Controllers),\ndata holders (Sources) and config parsers (Rules).\nAlso includes a web interface for configuration and troubleshooting.\n\nFeatures\n--------\n\n* Abstract base classes for creating custom controllers, sources and rules\n* The configuration is done using configparser with extended interpolation\n* Start a new netdef project with cookiecutter. Templates available at https://bitbucket.org/fholmer/cookiecutter-netdef.\n\nBuilt-in Controllers:\n\n* OpcUa server / client ([freeopcua](https://pypi.org/project/freeopcua/))\n* TcpModbus server / client ([pymodbus](https://pypi.org/project/pymodbus/))\n* icmp ping / url ping\n* XmlRpc client\n* trigger events by using crontab format ([crontab](https://pypi.org/project/crontab/))\n* disk, memory and CPU monitoring ([psutil](https://pypi.org/project/psutil/))\n* MQTT client (using a simple messaging format called DataAccess) ([paho-mqtt](https://pypi.org/project/paho-mqtt/))\n* Simple RESTJson client\n\nBuilt-in Rules:\n\n* Generic CSV config parser\n\nBuilt-in application engines:\n\n* threaded engine with stdout/stderr only\n* threaded engine with web-interface (webadmin)\n* serve webadmin behind nginx reverse proxy\n\nUse Cases\n---------\n\nNetdef is useful if you want to create a middleware that can translate a\nprotocol into a completely different protocol or data format into a completely\ndifferent data format.\n\nGetting started\n---------------\n\nFirst install cookiecutter and netdef templates::\n\n $ python3 -m venv cookiecutter/\n $ cookiecutter/bin/pip install cookiecutter\n $ hg clone https://bitbucket.org/fholmer/cookiecutter-netdef cookiecutter/cookiecutter-netdef\n\nCreate your first application::\n\n $ cookiecutter/bin/cookiecutter cookiecutter/cookiecutter-netdef/cookiecutter-minimal-app\n\nCookiecutter and netdef-templates can now be removed if you wish.\n\nSetup your application::\n\n $ cd your-application\n $ python3 -m venv venv\n $ source venv/bin/activate\n $ pip install -r requirements-dev.txt\n $ pip install -r requirements.txt\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/fholmer/netdef", "keywords": "Application Framework Networking Monitoring", "license": "GNU Lesser General Public License v3 or later", "maintainer": "", "maintainer_email": "", "name": "netdef", "package_url": "https://pypi.org/project/netdef/", "platform": "", "project_url": "https://pypi.org/project/netdef/", "project_urls": { "Homepage": "https://bitbucket.org/fholmer/netdef" }, "release_url": "https://pypi.org/project/netdef/1.0.4/", "requires_dist": [ "Flask", "Flask-Admin", "Flask-BasicAuth", "Flask-Login", "Jinja2", "Werkzeug", "psutil", "Flask ; extra == 'full'", "Flask-Admin ; extra == 'full'", "Flask-BasicAuth ; extra == 'full'", "Flask-Login ; extra == 'full'", "Jinja2 ; extra == 'full'", "PyYAML ; extra == 'full'", "Werkzeug ; extra == 'full'", "aiohttp ; extra == 'full'", "crontab ; extra == 'full'", "cryptography ; extra == 'full'", "freeopcua ; extra == 'full'", "paho-mqtt ; extra == 'full'", "psutil ; extra == 'full'", "pymodbus ; extra == 'full'", "pytz ; extra == 'full'", "pywin32 ; extra == 'full'", "pyzmq ; extra == 'full'", "schema ; extra == 'full'", "six (==1.11.0) ; extra == 'full'", "waitress ; extra == 'full'", "pywin32 ; extra == 'windows-service'" ], "requires_python": ">=3.5", "summary": "An application framework with built-in drivers (Controllers), data holders (Sources) and config parsers (Rules). Also includes a web interface for configuration and troubleshooting.", "version": "1.0.4" }, "last_serial": 5699687, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "25808cdd656ea748e737df2902ed58de", "sha256": "604c619597f3f5f331e44ef851272a30933244fcaedef0a796ef8a9c8db5a395" }, "downloads": -1, "filename": "netdef-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "25808cdd656ea748e737df2902ed58de", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 66091, "upload_time": "2019-05-11T14:57:23", "url": "https://files.pythonhosted.org/packages/12/62/acaf5294f8ce5ec852c264a6ca01cb7bafa9b3a97e2b2864acbb2338f096/netdef-1.0.0-py3-none-any.whl" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "3434000442cae7462a15a32d2930c323", "sha256": "0a2a9a439be7846ba9962b75b823be200231dc785d0b556fc06c1feefaa99332" }, "downloads": -1, "filename": "netdef-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "3434000442cae7462a15a32d2930c323", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 75976, "upload_time": "2019-05-17T08:47:33", "url": "https://files.pythonhosted.org/packages/d1/4f/03f24707e67cb9bda0e99dc87d86a8970e8364447a81cad29e6713d98766/netdef-1.0.1-py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "1534ff0692fb041516b4e84783b5b525", "sha256": "9123b52d8940ce015f2b5c5d057d59224f3592de3461b132f0de9cc4fa760923" }, "downloads": -1, "filename": "netdef-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "1534ff0692fb041516b4e84783b5b525", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 77020, "upload_time": "2019-05-25T10:47:22", "url": "https://files.pythonhosted.org/packages/15/5b/26a10ef15d58390688fc8f515437f3316801325ace95215f3590edad8a1c/netdef-1.0.2-py3-none-any.whl" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "356b3c75701f8a00b5a0245f4f0d419e", "sha256": "f7940b6225e8fa0e3c4c8a928b764ecd743947febd5341de64ad5e744945b8ba" }, "downloads": -1, "filename": "netdef-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "356b3c75701f8a00b5a0245f4f0d419e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 83064, "upload_time": "2019-06-16T19:04:33", "url": "https://files.pythonhosted.org/packages/5b/98/4a0d7c883a217b89bb2603199f10d58826c727533f7774e29aa980c39ad6/netdef-1.0.3-py3-none-any.whl" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "9f2488e220a89227da5d5a5d2902c35e", "sha256": "91075743e3a50d659c168d9c9e41ccc641d45ebb12a7bf9aaa0744febc43577e" }, "downloads": -1, "filename": "netdef-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9f2488e220a89227da5d5a5d2902c35e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 106477, "upload_time": "2019-08-19T18:09:44", "url": "https://files.pythonhosted.org/packages/64/9a/3d9d7d8cacd1254dd4dbbaa73944f1e360a52673ac76308337134319271e/netdef-1.0.4-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9f2488e220a89227da5d5a5d2902c35e", "sha256": "91075743e3a50d659c168d9c9e41ccc641d45ebb12a7bf9aaa0744febc43577e" }, "downloads": -1, "filename": "netdef-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9f2488e220a89227da5d5a5d2902c35e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 106477, "upload_time": "2019-08-19T18:09:44", "url": "https://files.pythonhosted.org/packages/64/9a/3d9d7d8cacd1254dd4dbbaa73944f1e360a52673ac76308337134319271e/netdef-1.0.4-py3-none-any.whl" } ] }