{ "info": { "author": "Anthony Bryan", "author_email": "projects@anthonybryan.net", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Topic :: Home Automation" ], "description": "Python interface for Nanoleaf Aurora\n====================================\n\nA Python module for the coolest lights with the worst software support.\n\nThis module aims to do more than just act as a wrapper for API calls. It\nprovides several convenience functions to perform more complicated and\nrobust actions than are possible in some of the other Aurora wrappers\nI've seen. For instance, being able to switch to a random new effect, or\ntoggle the on/off state with a single command.\n\nSupport The Project\n~~~~~~~~~~~~~~~~~~~\n\nThis is a pet project, and I'm doing it because I need API support just\nas badly as you do. But, if it really does make your life better, I'd\nappreciate a cup of coffee.\n\n::\n\n BTC: 1Gr31rgb6UXEdXwbwQGUsadcd7AnY7okXT\n LTC: Lajqnm28UipLbzJqvyy4tRQFf39xQy6B48\n\nInstall\n-------\n\nIt's super easy - just use pip to get the latest version.\n\n::\n\n pip install nanoleaf --upgrade\n\nSetup\n-----\n\nThere are two pieces of information you'll need to control your Aurora:\nThe IP address and an auth token.\n\nFinding IP Address\n~~~~~~~~~~~~~~~~~~\n\nFor most people, the IP address that the Aurora uses to communicate is\nthe one assigned by your router, but this might not necessarily be true\ndepending on your network setup. Either way, you can get this by using\nthe setup class. After about 90 seconds, this will return a list of the\nIP address of every Aurora found on the network.\n\n.. code:: python\n\n from nanoleaf import setup\n\n ipAddressList = setup.find_auroras()\n\nGenerate Auth Token\n~~~~~~~~~~~~~~~~~~~\n\nTo generate an auth token, you must first press and hold the power\nbutton on the Aurora for about 5-7 seconds, until the white LED flashes\nbriefly. Then, call the Setup class like so:\n\n.. code:: python\n\n from nanoleaf import setup\n\n token = setup.generate_auth_token(\"192.168.1.129\")\n\nBe sure to store this auth token somewhere for future use. If you lose\nthis token, you'll have to generate another. Personally, I just keep it\nin the scripts I've written that call this library.\n\nExamples\n--------\n\nTurn on and set to an effect\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n from nanoleaf import Aurora\n\n my_aurora = Aurora(\"169.254.123.123\", \"5EvbR2FjfmYfAkEtOkEnolnZbe6qOB\")\n my_aurora.on = True\n my_aurora.effect = \"Violets Are Blue\"\n\nSet multiple Auroras to the same random effect\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n left_side = Aurora(\"192.168.1.56\", \"5EvbR2FjfmYfAkEtOkEnolnZbe6qOB\")\n right_side = Aurora(\"192.168.1.78\", \"fAkeR2FjfmYfAkEtOkEnolnZtOkEn\")\n left_side.effect = right_side.effect_random()\n\nAdd a new effect\n~~~~~~~~~~~~~~~~\n\nPresently, you must create your own raw dict that exactly matches the\nstructure found on the `API\ndocumentation `__.\nMethods of making this much easier are planned for future updates.\n\n.. code:: python\n\n effect_data = {\n \"command\": \"add\",\n \"animName\": \"My Random Animation\",\n \"animType\": \"random\",\n \"colorType\": \"HSB\",\n \"animData\": None,\n \"palette\": [\n {\n \"hue\": 0,\n \"saturation\": 100,\n \"brightness\": 100\n },\n {\n \"hue\": 120,\n \"saturation\": 100,\n \"brightness\": 100\n },\n {\n \"hue\": 240,\n \"saturation\": 100,\n \"brightness\": 100\n }\n ],\n \"brightnessRange\": {\n \"minValue\": 25,\n \"maxValue\": 100\n },\n \"transTime\": {\n \"minValue\": 25,\n \"maxValue\": 100\n },\n \"delayTime\": {\n \"minValue\": 25,\n \"maxValue\": 100\n },\n \"loop\": True\n }\n\n my_aurora.effect_add_raw(effect_data)\n\nDelete an effect\n~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n my_aurora.effect_delete(\"My Random Animation\")", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/software-2/nanoleaf/archive/0.4.1.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/software-2/nanoleaf", "keywords": "nanoleaf,aurora,lighting,openAPI", "license": "", "maintainer": "", "maintainer_email": "", "name": "nanoleaf", "package_url": "https://pypi.org/project/nanoleaf/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/nanoleaf/", "project_urls": { "Download": "https://github.com/software-2/nanoleaf/archive/0.4.1.tar.gz", "Homepage": "https://github.com/software-2/nanoleaf" }, "release_url": "https://pypi.org/project/nanoleaf/0.4.1/", "requires_dist": [ "requests" ], "requires_python": "", "summary": "Python interface for Nanoleaf Aurora.", "version": "0.4.1" }, "last_serial": 2929327, "releases": { "0.0.0": [ { "comment_text": "", "digests": { "md5": "9366800789031310fe6c84055a3dad97", "sha256": "c4070abedb049516f8cad31621defe6610ea9600f8b0e1258af280ec35e4b978" }, "downloads": -1, "filename": "nanoleaf-0.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9366800789031310fe6c84055a3dad97", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9761, "upload_time": "2017-05-30T01:17:02", "url": "https://files.pythonhosted.org/packages/a5/d8/0929f60ebe0fe249cf35c57e51fc7b97fc9dc2ec529dcb3c28ce3db14899/nanoleaf-0.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "abe2cf339973a3e1a56b9e9ee7238427", "sha256": "795d7faf700855e53df44e3e1a38a1e2fb6d265d6c5222d0563f5031b8bec5f7" }, "downloads": -1, "filename": "nanoleaf-0.0.0.tar.gz", "has_sig": false, "md5_digest": "abe2cf339973a3e1a56b9e9ee7238427", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30383, "upload_time": "2017-05-30T01:17:04", "url": "https://files.pythonhosted.org/packages/b6/08/601883f7486495561d6636dcd881c7d86cbcdc74a57523f980c81e208401/nanoleaf-0.0.0.tar.gz" } ], "0.1.1": [], "0.1.3": [ { "comment_text": "", "digests": { "md5": "5f10a29cf7377d09d305f75b136f0e43", "sha256": "dfd9fc671170ae5f3148c1ba09bc6bef5a457722af48fbc5593615c7ee1f807c" }, "downloads": -1, "filename": "nanoleaf-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5f10a29cf7377d09d305f75b136f0e43", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6792, "upload_time": "2017-05-28T23:49:13", "url": "https://files.pythonhosted.org/packages/91/6b/47b5304fe5ebc13570a38e805b14764653368c333aa6d43dc8b6ff8b7679/nanoleaf-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "237bb152c581b577670c417125bd10cf", "sha256": "250d02d62a5bae4f7ad89bd900a556320ba6e10f82e669fe8a49d65485e06da7" }, "downloads": -1, "filename": "nanoleaf-0.1.3.tar.gz", "has_sig": false, "md5_digest": "237bb152c581b577670c417125bd10cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17860, "upload_time": "2017-05-28T23:49:15", "url": "https://files.pythonhosted.org/packages/68/b5/f6588d1403c26b1a1b772feea645713266c6922a78f15f3364bb10635fe2/nanoleaf-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "fefa6380ff3dcdb74c720c693e13130d", "sha256": "53cfde104e78a41600054d06b968f2b35c57b4181ae5d2923d58c0a282d70387" }, "downloads": -1, "filename": "nanoleaf-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "fefa6380ff3dcdb74c720c693e13130d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6793, "upload_time": "2017-05-29T00:07:24", "url": "https://files.pythonhosted.org/packages/db/b2/a3b128c17bc4b3ff4113db17f2ef2aa5e4c1d658c3285f9f5fcf659f8c7b/nanoleaf-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e2393660c1482a26df5a393b7a32c7a", "sha256": "9b0813624434a24a76845f096726416f57434a5c4b0fc33f2bcc02621ddf6a35" }, "downloads": -1, "filename": "nanoleaf-0.1.4.tar.gz", "has_sig": false, "md5_digest": "3e2393660c1482a26df5a393b7a32c7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17857, "upload_time": "2017-05-29T00:07:26", "url": "https://files.pythonhosted.org/packages/61/29/2c9356dd4e7b70ce757967b92a3fe6052166654ea9f1807b46e4e144b057/nanoleaf-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "b59acff157edb71f5d8fea7d40dae6c8", "sha256": "7f23d93b5a7a55f82d8b0c50d29b04661196cbf3e8ef0791a7d0650c967f0fe7" }, "downloads": -1, "filename": "nanoleaf-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "b59acff157edb71f5d8fea7d40dae6c8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6955, "upload_time": "2017-05-29T00:25:14", "url": "https://files.pythonhosted.org/packages/89/a8/e90430ff0a7022425a2f371c360731212d93a22671812a35b228762c13a2/nanoleaf-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e0bd9bd7bed35e6c3f4e001601d0145", "sha256": "153f5f12d5d424f4859ba89878c95da83df450598139f210e3e4943641ba7a23" }, "downloads": -1, "filename": "nanoleaf-0.1.5.tar.gz", "has_sig": false, "md5_digest": "3e0bd9bd7bed35e6c3f4e001601d0145", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17883, "upload_time": "2017-05-29T00:25:16", "url": "https://files.pythonhosted.org/packages/83/c3/a860b0960a83ad53aa55d50764205ffe47407aa701b1336611ebdfe70724/nanoleaf-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "9a860606bd893e9cd5142b740520f81b", "sha256": "7c17555f841e588940938afaea4156d89436d8c69ba77ed1e37ec932bba188df" }, "downloads": -1, "filename": "nanoleaf-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "9a860606bd893e9cd5142b740520f81b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6998, "upload_time": "2017-05-29T00:39:43", "url": "https://files.pythonhosted.org/packages/08/7d/8e261ed14a486d1dd662a0dc3f2134734ab0df37688de61564815e84206b/nanoleaf-0.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2df25422b374dbc1c4b310392073f437", "sha256": "c4a8eb4964ca58bf4cf4f099bf27c51c232c95bf547d899578ba931ff0a424ae" }, "downloads": -1, "filename": "nanoleaf-0.1.6.tar.gz", "has_sig": false, "md5_digest": "2df25422b374dbc1c4b310392073f437", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17904, "upload_time": "2017-05-29T00:39:45", "url": "https://files.pythonhosted.org/packages/b7/42/644787be51054ccf33a0a2b0491f463c12278545d64bd50ce236deff58f9/nanoleaf-0.1.6.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "e53b54f9d50a771c3f7aa85a6e178aa9", "sha256": "01cf6f6ffdd247aa91b96556e6a44b30ef4a7f503233e2ecbff7f748e60b00f3" }, "downloads": -1, "filename": "nanoleaf-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e53b54f9d50a771c3f7aa85a6e178aa9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7105, "upload_time": "2017-05-29T00:56:51", "url": "https://files.pythonhosted.org/packages/9b/eb/d67294afc028620b1ca100f72d0ad2b2d5e62a00779369f56895fae62390/nanoleaf-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9427fabc3111c7d40a65f643dbb947b1", "sha256": "d8909339adcacf69d0d8c44f0c6256909f3e7e7a004b7a98f4d02ea8563aac28" }, "downloads": -1, "filename": "nanoleaf-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9427fabc3111c7d40a65f643dbb947b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17988, "upload_time": "2017-05-29T00:56:53", "url": "https://files.pythonhosted.org/packages/3a/ba/f652ce6384fa92c6c0212369f390e6d68d79ea4f3a3ec67e36324cb90d1a/nanoleaf-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "c2d9d361605f8f8cceaa03aa9acdeb1a", "sha256": "fd009a8e9c3077c70af04eb589000edcbe8783ceaacdeacfa0d39863a82dfc54" }, "downloads": -1, "filename": "nanoleaf-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c2d9d361605f8f8cceaa03aa9acdeb1a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7500, "upload_time": "2017-05-29T08:50:38", "url": "https://files.pythonhosted.org/packages/11/37/2a382aa5e8f4d3435fa6439b08a1c287df4e8cac55aae64d967755f29e2f/nanoleaf-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb84ceec1dd140313260192a74d5fd46", "sha256": "cb449d017d067b48abcf87070f15c23bb4ca748d3b6f4a34bf25163fc2c739e4" }, "downloads": -1, "filename": "nanoleaf-0.2.1.tar.gz", "has_sig": false, "md5_digest": "cb84ceec1dd140313260192a74d5fd46", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23042, "upload_time": "2017-05-29T08:50:40", "url": "https://files.pythonhosted.org/packages/7b/ba/7c24348c8faefd1d8170dcfd2df4da3049f18f27b6970e333b993dd14f3b/nanoleaf-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "216ee4c78ca1d21625656308a6af8f8d", "sha256": "94b678d4e639f7d3c47251aa6a3b7648f484586db276c7ff1c3448767d474e8f" }, "downloads": -1, "filename": "nanoleaf-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "216ee4c78ca1d21625656308a6af8f8d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7527, "upload_time": "2017-05-29T09:12:30", "url": "https://files.pythonhosted.org/packages/03/37/667f758f90dce756cbdbe9fbf8d5d147d7ab8ce78767776a5bd9b726fd08/nanoleaf-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "802fffef5c19f86a43ab167897ea03e9", "sha256": "095fc0d03622510dbbe07450b411963f0caa4cc4e9a16f8eea57444b797c462a" }, "downloads": -1, "filename": "nanoleaf-0.2.2.tar.gz", "has_sig": false, "md5_digest": "802fffef5c19f86a43ab167897ea03e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23035, "upload_time": "2017-05-29T09:12:33", "url": "https://files.pythonhosted.org/packages/cd/26/de81778352f3f4d6ff5ec7db1e83f21ef73e0a61a05bd49fc5128921c71d/nanoleaf-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "fc0550e1106ac8a603d7b1e4c7242bc5", "sha256": "89e841092d6c03d55c7e2f99619151adb38e95edbe0ed7ac605f991d54b18487" }, "downloads": -1, "filename": "nanoleaf-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "fc0550e1106ac8a603d7b1e4c7242bc5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9765, "upload_time": "2017-05-30T01:18:16", "url": "https://files.pythonhosted.org/packages/0e/94/d62e56755cf11ed96ef713e2d727541704e56dba08b9a6b7ac3cf60b74e7/nanoleaf-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc75c81047543fbcc53c0a1d9f6ce0b8", "sha256": "5683e2bebc40fc924b5928bba29b490d97333f636e090828824d7b37621c940c" }, "downloads": -1, "filename": "nanoleaf-0.3.0.tar.gz", "has_sig": false, "md5_digest": "bc75c81047543fbcc53c0a1d9f6ce0b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30383, "upload_time": "2017-05-30T01:18:18", "url": "https://files.pythonhosted.org/packages/7e/03/7c7b723a1e18d6c4555aa4d0e9c2d7b6f2c4856f632d8f917ede3bf0fbfa/nanoleaf-0.3.0.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "41d0b0918d2fc89e00375966dea6bf92", "sha256": "29e39fada8446fb37c34283b53058b8cac707769b3908d171c174a47b7a6f301" }, "downloads": -1, "filename": "nanoleaf-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "41d0b0918d2fc89e00375966dea6bf92", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9763, "upload_time": "2017-05-30T04:37:39", "url": "https://files.pythonhosted.org/packages/72/a7/3b4ef89d6322970a63f629c3dc169cde26e5dc7cddb7f3a5c74af8d4f674/nanoleaf-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82c0a2c1fe90bd54b9b27b9b741f97f1", "sha256": "953519f16cc6816c67d4722c60a092ac0a383ff417c23c0f966e2fa54979f072" }, "downloads": -1, "filename": "nanoleaf-0.3.2.tar.gz", "has_sig": false, "md5_digest": "82c0a2c1fe90bd54b9b27b9b741f97f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30379, "upload_time": "2017-05-30T04:37:41", "url": "https://files.pythonhosted.org/packages/91/7f/8e79dbadbd8df7b959589701909249dc16ca71235c5e367d59a14ea3e88c/nanoleaf-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "dc152ff062c54fe521f2370cebf1281a", "sha256": "a4dcfc95bf63b4d21eb1933f4cf05801ecd00e4bb81bd4a54caa14a971ae6168" }, "downloads": -1, "filename": "nanoleaf-0.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "dc152ff062c54fe521f2370cebf1281a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9863, "upload_time": "2017-05-31T06:50:06", "url": "https://files.pythonhosted.org/packages/54/1f/c69fda5bb5dc07d61a57b5cfa43bb07c67ace5b6e9ac6f2805f6275e402d/nanoleaf-0.3.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ec66cb18ab48addb0e44415901b10ef9", "sha256": "61e53bdaa2eeb1137b05ece4c549d36be677b5a94b7cd98ad04c38d5b27b25f5" }, "downloads": -1, "filename": "nanoleaf-0.3.3.tar.gz", "has_sig": false, "md5_digest": "ec66cb18ab48addb0e44415901b10ef9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30814, "upload_time": "2017-05-31T06:50:08", "url": "https://files.pythonhosted.org/packages/1f/1f/ae6400896daefd7e5077e0b06da32e12f5392f6d42a8809d22f78484a327/nanoleaf-0.3.3.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "23175e2db4a7bacd3290b49857602458", "sha256": "4473f6d416c0084ebfc28e83304747f3300ac04759f0e5d854ab1f891ac5b032" }, "downloads": -1, "filename": "nanoleaf-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "23175e2db4a7bacd3290b49857602458", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10201, "upload_time": "2017-06-02T10:05:10", "url": "https://files.pythonhosted.org/packages/58/10/b4321bfb49d40365a453de56fce85c344b063f3d5814143f8c0354b73e62/nanoleaf-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b5d92144c07ce74880966ce7477aad44", "sha256": "9f6bc32ee750a5f5db846cc7c1a89e7a8ceb9c4999fb61dfc336244c1fe55c86" }, "downloads": -1, "filename": "nanoleaf-0.4.0.tar.gz", "has_sig": false, "md5_digest": "b5d92144c07ce74880966ce7477aad44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32135, "upload_time": "2017-06-02T10:05:12", "url": "https://files.pythonhosted.org/packages/cf/eb/b05c1a282283d6c7516e9fab8a2d107d83e1534a6939fe29c4e756b148d8/nanoleaf-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "f07275b098339e82990fec19311c9d80", "sha256": "56c4acfd4ee4c5434abf1c5e4bcc9a0932c2db95984eb6e3c6dea841e65172da" }, "downloads": -1, "filename": "nanoleaf-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f07275b098339e82990fec19311c9d80", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10417, "upload_time": "2017-06-06T14:40:28", "url": "https://files.pythonhosted.org/packages/9f/2f/39e44744ff3a5a26c943a0bf6c857d80a3186572c08c9373b3214c4aefc5/nanoleaf-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f9477f5b627844049e247890f8eebf4", "sha256": "1a69f05bf22578196fb068f563048f66b3a1a3db9595678dce9657e956ecb59d" }, "downloads": -1, "filename": "nanoleaf-0.4.1.tar.gz", "has_sig": false, "md5_digest": "5f9477f5b627844049e247890f8eebf4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32877, "upload_time": "2017-06-06T14:40:30", "url": "https://files.pythonhosted.org/packages/ab/aa/f749e8af9d9b1a9c6844373f27e77e3a4aac29f361f7c6e28c5c04d7ce3c/nanoleaf-0.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f07275b098339e82990fec19311c9d80", "sha256": "56c4acfd4ee4c5434abf1c5e4bcc9a0932c2db95984eb6e3c6dea841e65172da" }, "downloads": -1, "filename": "nanoleaf-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f07275b098339e82990fec19311c9d80", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10417, "upload_time": "2017-06-06T14:40:28", "url": "https://files.pythonhosted.org/packages/9f/2f/39e44744ff3a5a26c943a0bf6c857d80a3186572c08c9373b3214c4aefc5/nanoleaf-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f9477f5b627844049e247890f8eebf4", "sha256": "1a69f05bf22578196fb068f563048f66b3a1a3db9595678dce9657e956ecb59d" }, "downloads": -1, "filename": "nanoleaf-0.4.1.tar.gz", "has_sig": false, "md5_digest": "5f9477f5b627844049e247890f8eebf4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32877, "upload_time": "2017-06-06T14:40:30", "url": "https://files.pythonhosted.org/packages/ab/aa/f749e8af9d9b1a9c6844373f27e77e3a4aac29f361f7c6e28c5c04d7ce3c/nanoleaf-0.4.1.tar.gz" } ] }