Saravanan666/pypi-org huggingface dataset:
Package: py-neopixel-spidev
Python NeoPixel SPIdevThe py-neopixel-spidev Python module can be used to control WS2812 addressable
RGB LEDs via SPI on Linux devices using the generic Linux SPIdev driver.Only the MOSI signal of the SPI bus is used to control the DIN of the chained
LEDs. To emulate the protocol for the LEDs, each bit of LED data is made up of
4 SPI bits.DependenciesThe following Python modules are needed:NumPyPython SpidevAttributionsThis module barely contains any new code, but mainly bundles code from existing
projects for easier usage. Thanks to all the authors and contributors.Adafruit CircuitPython PypixelbufWe reuse the Pixelbuf class fromAdafruit CircuitPython Pypixelbuf.File:lib/pixelbuf.pyLicense:MITCopyright:Copyright (c) 2019-2020 Roy HooperAuthors:Damien P. George, Limor Fried, Scott Shawcroft, Roy HooperAdafruit CircuitPython NeoPixelFurther we use the NeoPixel class fromAdafruit CircuitPython NeoPixelwith some slight modifications to use the SPIdev bus as backend.File:lib/neopixel_spidev.pyLicense:MITCopyright:Copyright (c) 2016 Damien P. George, Copyright (c) 2017 Scott Shawcroft for Adafruit Industries, Copyright (c) 2019 Carter Nelson, Copyright (c) 2019 Roy HooperAuthors:Damien P. George, Scott Shawcroft, Carter Nelson, Roy Hooperws2812-spiTo emulate the protocol data, we use the code from thews2812-spiproject.File:lib/neopixel_spi_write.pyLicense:AGPLAuthor:joostetoUsageSee the examples inexamples/and the docs for theAdafruit
NeoPixel class.CopyrightCopyright (c) 2020 Kontron Electronics GmbHAuthor: Frieder SchrempfLicenseThe code is licensed under theMITlicense, unless the source code
files specify a different license.
Package: pyneovi
pyneovi is a wrapper around the API provided by Intrepid Control Systems for communicating with their NeoVI range of devices.The focus of the library is on communicating with the ECU in the context of a diagnostic session. Currently, authentication via Security Access commands is not handled and must be performed by a separate tool.The project homepage ishttp://kempj.co.uk/projects/pyneovi/The project sourcecode repository is athttps://bitbucket.org/Kemp_J/pyneoviDocumentation can be found athttp://pyneovi.readthedocs.org/en/latest/This library is available under the MIT license, as provided in LICENSE.txt.
Package: pynepcord
PyNepCord - NeppedAPI Python LibraryPyNepCord is easy-to-use library that usesNeppedAPI.Check theDocsdirectory for getting started guide, usage examples and API reference.Basic usage#!/usr/bin/python# -*- coding: utf-8 -*-frompynepcord.baseimportImageSessionif__name__=='__main__':key='your-api-token'session=ImageSession(key)# Create a session to get imagesimage=session.get_image('happy')# get the image by the 'happy' categoryprint(image.url)# display the URL of the picture in the terminalasync/await#!/usr/bin/python# -*- coding: utf-8 -*-importasynciofrompynepcord.aioimportImageSession# pynepcord.base - the non-async version that uses `requests`.# pynepcord.aio - same, but uses `aiohttp` and async/await syntax.asyncdefmain():key='your-api-token'session=ImageSession(key)image=awaitsession.get_image('happy')print(image.url)if__name__=='__main__':asyncio.run(main())LicenseMIT License

Copyright (c) 2020 NellyD3v

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Package: pynepsys
PyNepSysPython package to interface with theNeptune Systems Apex.
Tested against an Apex Classic, handles reading probe and
outlet state, and setting outlets to ON, OFF, AUTO modes.UsagefrompynepsysimportApexapex=Apex('192.168.0.2','admin','pass')connection_status=awaitapex.validate_connection()ifconnection_status!='success':raiseException('Cannot connect to Apex: '+connection_status)# connect and pull metadata about probes and outlets.awaitapex.fetch_current_state()outlet=apex.outlets['KalkMixer']# This just updates the local copy to auto modeoutlet.enable_auto()# Push the state to the Apexawaitapex.update_outlet(outlet)# The mode is auto, but we don't know if it's on or off# until we refetch state. We can hold on to the outlet instance.assertnotoutlet.is_on()andnotoutlet.is_off()# Fetch againawaitapex.fetch_current_state()assertoutlet.is_auto()==Trueassertoutlet.is_on()oroutlet.is_off()Neptune Systems Apex Aquacontroller:http://www.neptunesystems.com/products/apex-controllers/apex-controller-system/
Package: pynequa
PynequaA python library to handle communication with Sinequa REST API.Sinequa is an enterprise search tool. It provides a cognitive search and analytics platform that helps organizations gain insights from their structured and unstructured data spread across various sources, including databases, documents, emails, websites, and more.Installation$ pip install pynequaExample Usageimport pynequa
from pynequa.models import QueryParams

# provide following config parameters
config = {
   "base_url": "",
   "app_name": "",
   "access_token":"",
   "query_name": ""
}

# initialize a Sinequa connector instance
sinequa=pynequa.Sinequa.from_config(config)

# OR
# you can directly instantiate Sinequa using
sinequa = pynequa.Sinequa(
     access_token: config["access_token"],
     base_url: config["base_url"],
     app_name: config["app_name"],
     query_name: config["query_name"],
)

params = QueryParams()
params.search_text = "<your_search_text>"
# other params

# perform a search query operation
results=sinequa.search_query(params)Feature RoadmapImplement following REST endpoints to manage requests with Sinequa API.Search Endpoints:search.appsearch.datasetsearch.queryqueryintentsearch.profilesearch.usersettingssearch.previewsearch.queryexportsearch.recentqueriessearch.similardocumentssearch.querylinkssearch.ratingssearch.profile.subtreesearch.alertssearch.basketssearch.labelsserach.savedQueriessearch.suggestsearch.customsuggestFieldengine.sqlIndexing Endpointsindexing.collectionindexing.customCollectionindexing.partitionOperating Task Endpointsoperation.actionStatusoperation.collectionStartoperation.commandStartoperation.jobStartoperation.partitionStartoperation.serveroperation.serverstatusoperation.taskstatusGeneral Endpointsaudit.notifyadmin.configdev.pluginmultiDevelopmentCheckDEVELOPERS GUIDEfor details.ContributingWhen contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the authors of this repository before making a change.LicenseDistributed under the terms of theMIT license,pynequais free and open source software.
Package: pyner
nerSDK to access API of Ner serviceThis program is SDK of Ner service API.It can handle one sentence or simple text file by self-hosted NER service or Stanford NER service (http://nlp.stanford.edu:8080/ner/process).InstallationpipinstallpynerUsageusage: ner.py [-h] [--nertype NERTYPE] [--classifier CLASSIFIER]
              [--endpoint ENDPOINT] [--sentence SENTENCE] [--path PATH]

Process one sentence and simple textfile by remote self-NER service or
Stanford NER one.

optional arguments:
  -h, --help            show this help message and exit
  --nertype NERTYPE     NER service type,0:self-NER(defualt),1:Stanford-NER
  --classifier CLASSIFIER
                        classifier code of Stanford NER service,including
                        7class, 4class, 3class, distsim
  --endpoint ENDPOINT   Endpoint of self-NER service,ignored when Stanford-NER
                        type
  --sentence SENTENCE   Sentence to process
  --path PATH           Path file to processFor instance:$pythonner.py--endpointhttp://example.com/ner/bert/normal--pathtest.txt--sentence'康龙化成(03759)拟续聘安永华明为2020年度境内会计师事 务所'{'ORG':['康龙化成','安永华明']}{'LOC':['新冠','新疆'],'ORG':['华资实业','明科','中葡','亚星','厦华','中房股份','中房股份','西域旅游','西域旅游','丰华股份','丰华股份','壳公司']}$pythonner.py--nertypestanford--sentence'hello, chongqing, intel, IBM, Tecent. Bill Gates said.'--classifier7class{'LOC':['chongqing'],'ORG':['intel','IBM','Tecent'],'PER':['Gates']}
Package: pynerator
AboutPynerator is a simple application to generate random passwords/codes, desenvolved using python and pyqt5.InstallVia pippip3 install pyneratorVia githubgit clonehttps://github.com/jeffrichardchemistry/pyneratorcd pyneratorpython3 setup.py installRunIn a terminalpython3 -m pyneratorAs a modulefrom pynerator import pyneratorguipyneratorgui.runGUI()
Package: pynerd
Requirementspython3 -m pip install --upgrade build
python3 -m pip install --upgrade twine
python3 -m pip install --upgrade setuptools wheelDownload repository:git clone https://github.com/johanneskruse/pypi_template.gitUpload:Inpyproject.tomlyou can set the name of the pacakageRun the following to upload:Packaging Python ProjectsGenerating distribution archivesStand inside the project, i.e.cd pypi_templateNext build the package:python3 -m buildThis command should output a lot of text and once completed should generate two files in the dist directory:dist/
├── sampleproject-0.0.1-py3-none-any.whl
└── sampleproject-0.0.1.tar.gzUploading the distribution archivestwine upload dist/*Go tohttps://pypi.org/to see the package!Inspirationsetup.py vs setup.cfg in Pythonsample git repo projectPackaging Python ProjectsTODO:Setup with pyproject.toml fileNote that if you want to install packages in editable mode (i.e. by running pip install -e .) you must have a valid setup.py file apart from setup.cfg and pyproject.toml. TRY TO RUN INSTEAD: pip install -e . -f .Acronym Generator (help generate the name)https://acronymify.com/
Package: pynerf
NeRFA Numpy Implementation of the NeRF Algoritm for Global and Internal Molecular Coordinate ConversionInstallationpip install pynerfFormatimportnumpyasnp# Global coordinates for the molecule: CCCCC(C)CCCc1ccccc1# X, Y, ZXYZ=np.array([[-3.85918113,1.96727702,-0.90964251],[-3.18010648,0.73561076,-1.50023432],[-2.59821482,-0.0276012,-0.32047649],[-1.89223409,-1.27462464,-0.74157415],[-1.36589543,-1.96407604,0.4887215],[-2.5080429,-2.32882212,1.43590953],[-0.42564473,-1.07397927,1.26079092],[0.74822042,-0.69585885,0.37285949],[1.64031545,0.1825755,1.22863933],[2.84575382,0.63093342,0.47241165],[2.86522176,1.79613148,-0.26713038],[3.99177109,2.19435562,-0.96077995],[5.14810842,1.44285119,-0.9439963],[5.1362438,0.27652072,-0.20673226],[4.0076203,-0.12008426,0.48671673]])# Internal coordinates for the molecule: CCCCC(C)CCC# BondLength, BondAngle (Deg/Rad), BondTorsion (Deg/Rad)DOF=np.array([[0.000,0.000,0.000],[1.525,0.000,0.000],[1.521,105.973,0.000],[1.494,112.404,-180.000],[1.505,108.496,-179.436],[1.528,110.770,60.154],[1.507,111.484,-118.831],[1.520,109.236,-59.789],[1.517,105.593,-179.530],[1.492,111.304,179.999],[1.380,122.458,89.997],[1.382,121.590,179.999],[1.379,121.364,0.000],[1.380,117.378,0.000],[1.383,121.159,0.000],])# Custom dependencies with branch# PrevAtom1, PrevAtom2, PrevAtom3DEP=np.array([[0,0,0],[0,0,0],[1,0,0],[2,1,0],[3,2,1],[4,3,2],[4,3,5],# <- Branch Point[6,4,3],[7,6,4],[8,7,6],[9,8,7],[10,9,8],[11,10,9],[12,11,10],[13,12,11]])# Note: Default assumes all atoms are sequentialBONDS=[[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,0,1,0,0,0,0,0,0,0,0,0,0,0,0],[0,1,0,1,0,0,0,0,0,0,0,0,0,0,0],[0,0,1,0,1,0,0,0,0,0,0,0,0,0,0],[0,0,0,1,0,1,1,0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,1,0,0,0,0,0,0,0],[0,0,0,0,0,0,1,0,1,0,0,0,0,0,0],[0,0,0,0,0,0,0,1,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,0,1,0,1,0,0,0,1],[0,0,0,0,0,0,0,0,0,1,0,1,0,0,0],[0,0,0,0,0,0,0,0,0,0,1,0,1,0,0],[0,0,0,0,0,0,0,0,0,0,0,1,0,1,0],[0,0,0,0,0,0,0,0,0,0,0,0,1,0,1],[0,0,0,0,0,0,0,0,0,1,0,0,0,1,0],]ExamplefromnerfimportNeRF,iNeRFxyz=NeRF(DOF,deps=DEP)dof=iNeRF(xyz,deps=DEP)assertnp.all(np.absolute(xyz-XYZ)<0.001)assertnp.all(np.absolute(dof-DOF)<0.001)Vectorized ExamplefromnerfimportNeRF,iNeRF,perturb_dofsrepeats=100000# ~2 seconds on my computer for both calculationsDOFS=perturb_dofs(np.repeat(DOF[np.newaxis],repeats,axis=0),bond_length_factor=0.01*np.ones(1),bond_angle_factor=0.1*np.ones(len(DOF)),bond_torsion_factor=1.0*np.ones((repeats,len(DOF))))xyzs=NeRF(DOFS,deps=DEP)dofs=iNeRF(xyzs,deps=DEP)xyzs_delta=xyzs-ORIGIN_XYZdofs_delta=dofs-DOFdofs_delta[np.where(dofs_delta>180.0)]-=360.0dofs_delta[np.where(dofs_delta<-180.0)]+=360.0assertnp.all(np.absolute(np.mean(xyzs_delta,axis=0))<0.05)assertnp.all(np.absolute(np.mean(dofs_delta,axis=0))<0.05)Deps Exampleassertnp.array_equal(build_deps(BONDS),DEP)CitationParsons J, Holmes JB, Rojas JM, Tsai J, Strauss CE. Practical conversion from torsion space to Cartesian space for in silico protein synthesis. J Comput Chem. 2005;26(10):1063-1068. doi:10.1002/jcc.20237
Package: pyneric
The pyneric package provides generic Python utilities and extensions.Thesource,documentation,
andissuesare hosted onGitHub.This is an open-source project by and for the community.  Contributions,
suggestions, and questions arewelcome(Twitter: @bravegnuworld).OverviewThis library is intended as a place for Python code whose scope is generic, not
specific to any particular business domain.  The pyneric.future package is
intended to include everything needed to easily support Python 2.7 and 3.3+
simultaneously using the Python-Future library.ExamplesImporting>>> import pynericSupporting recent versions Python 2 and 3 simultaneouslyThefuturepackage does a great job of allowing one to support Python 2.6,
2.7, and 3.3+ with the same code base; however, some modifications that exist
in thepyneric.futurepackage can help ease or fix a few shortcomings.  One
can use the following to import common 2/3 compatibility features:from __future__ import absolute_import, division, print_function, unicode_literals
from pyneric.future import *Python identifier transformationlower/underscore to titled-terms (pascalize function)>>> pyneric.pascalize('basic_python_identifier')
'BasicPythonIdentifier'titled-terms to lower/underscore (underscore function)>>> pyneric.underscore('BasicPythonIdentifier')
'basic_python_identifier'Get a function name from the stackthe current function name>>> def foo():
...     return pyneric.get_function_name()
...
>>> foo()
'foo'also further back in the stack>>> def foo():
...     def bar():
...         return pyneric.get_function_name(1) + pyneric.get_function_name()
...     return bar()
...
>>> foo()
'foobar'Return upon exception (tryf function)no exception>>> pyneric.tryf(tuple, [])
()catch any non-system-exiting exception by default>>> pyneric.tryf(tuple, object)catch more specific exceptions>>> pyneric.tryf(tuple, object, _except=TypeError)return a different value upon exception>>> pyneric.tryf(tuple, object, _return=())
()Test Python identifier validityreturn boolean>>> pyneric.valid_python_identifier('not_a_keyword')
True
>>> pyneric.valid_python_identifier('class')
False
>>> pyneric.valid_python_identifier('xyz.abc', dotted=True)
True
>>> pyneric.valid_python_identifier('class.keyword', dotted=True)
Falseraise exception>>> pyneric.valid_python_identifier('not_a_keyword', exception=True)
True
>>> pyneric.valid_python_identifier('class', exception=True)
Traceback (most recent call last):
  ...
ValueError: 'class' is a Python keyword.raise a specific exception>>> class MyException(Exception): pass>>> pyneric.valid_python_identifier('1nv4l1d', exception=MyException)
Traceback (most recent call last):
  ...
MyException: '1nv4l1d' is not a valid Python identifier.Make a request to a REST resource>>> class UserAgent(pyneric.rest_requests.RestResource): url_path = 'user-agent'>>> headers = {'User-Agent': 'Mozilla, but not really', 'Accept': 'application/json'}>>> str(UserAgent('http://httpbin.org').get(headers=headers).json()['user-agent'])
'Mozilla, but not really'
Package: pyne-script-utilities
Pyne ScriptPyne Script aims to offer a set of utility sub-modules that allow for code structure similar to Trading View Pine Script in Python.InstallationUse the package managerpipto install pyne_script.pipinstallpyne-script-utilitiesAvailable sub-modulesseries.pyContributingPull requests are welcome. For major changes, please contact me first
to discuss what you would like to change.LicenseGPL-3.0
Package: pyness
Badgeswhat is Pynesspyness --> python necessary.A simple module aka tool that will cover some necessary work of your project/work.
The codes on this module is very simple i think anyone can do this but this module will help you to do it quickly and make your lines low.importantIf u got any error pls make issus in githubUpdate logSorry for those who got error on version - 1.3.6 (i forgot to add pillow module on requirement)key function now using half secrets and half random moduleconvert.photo is removedNext Update:Working on bitesi will use bites to make the key function even more fasternew function (key.number,key.upper) #new function when done working on bites (bitestostr,bitestoint,str/int to bites)InstallpipinstallpynessDeploymentGenerate with key function:x1=pyness.key(5)x2=pyness.key(5,number=True,upper=False,lower=False,symbol=False)x3=pyness.key(5,number=3,upper=2)x4=pyness.key(5,number="1",upper="SA",lower=False,symbol=False)output:x1:&qYkJAllmixedx2:98003onlynumberx3:I70Q9thereis3numberand2upperx4:A11S1usedstringGet FPS:deftest(x,b):x+bprint(pyness.fps())Bar:a=pyness.bar(total=100,amount=20,length=50)print(a)output:"|██████████----------------------------------------| 20%"update:pyness.update()output:CollectingpynessUsingcachedpyness-1.2.0-py3-none-any.whl(3.8kB)Installingcollectedpackages:pynessSuccessfullyinstalledpyness-1.2.0FeatureskeyFPSBarcoming soon
Package: pynessus
Client for the xml rpc interface of the Nessus vulnerability scanner v5+.Methods mirror what is in the official API athttp://static.tenable.com/documentation/nessus_5.0_XMLRPC_protocol_guide.pdfin a pythonic way so that you don’t have to care about json or xml.Ongoing workFeatures are being added, not all the API is mapped yet.
As all the api calls kind of look the same, it is braindead work so pull
requests are more than welcome.Example usagewithNessus('127.0.0.1:8443')asnes:nes.Login('admin','pass$%&(#'%#[]@:')logging.info('Feeds:%s',nes.Feed())All calls can also be done asynchronously if needed:withNessus('127.0.0.1:8443')asnes:defLoginCallback(result,error=None):iferror:logging.warning('Error while logging:%s',error)returnlogging.info('Correcty logged in:%s',result)future=nes.Login('admin','pass$%&(#\'%#[]@:',callback=LoginCallback)futures.wait([future])# At this point the LoginCallback is sure to have been called.
Package: py-nessus-pro
py_nessus_prois a Python module that provides a high-level interface for interacting with a Nessus vulnerability scanner. The module uses the Nessus REST API to perform various operations, such as creating and managing scans, retrieving scan metadata and reports, and searching for scans by name or date. It provides Nessus Professional with an interface to expand the read-omly API and be able to launch scans and modify them.InstallationTo installpy_nessus_pro, simply run:pip install py-nessus-proUsageCreate an instancefrompy_nessus_proimportPyNessusPronessus_server="https://nessus-server-url:8834"username="admin"password="password"nessus=PyNessus(nessus_server,username,password)Launch a scan:scan_name="My Scan"scan_target="127.0.0.1"scan_folder="Automatic Scan Test"scan_index=nessus.new_scan(name=scan_name,target=scan_target,folder=scan_folder)Licensepy_nessus_prois licensed under the GNU GENERAL PUBLIC LICENSE
Version 2. See theLICENSEfile for more information.
Package: py-nestedtext
NestedText: A Human-Friendly Data FormatPython implementation of the NestedText spec, version 2.0.Note that this is a simplified fork of the original projecthttps://github.com/KenKundert/nestedtextwith authors Ken & Kale Kundert. Please see that project for the official language spec.Related ProjectsNestedText spec/docsImplementation of NestedText in ZigOfficial NestedText test suiteVim syntax files for NestedTextSyntax files for Visual StudioDevelopmentRun the tests withpytest(afterpip install -r requirements.txt).
Package: pynestor
Variables d'environnementNO_DB_DUMP (default FALSE):
if not already existing, preview will be mounted without dump from prod instance, but with demo datasMODULES_WITHOUT_DEMO (Optionnel) :
list of modules for --without-demo option (modules that will be loaded without demo data)NESTOR_NAME_PREFIX (Optionnel) :
Le nom et l'url de la preview commenceront par cette variable si présente. Ceci permet de différencier les preview de 2 projets (par exemple core et filiale) qui utilisent la même branche.NESTOR_NAME (Optionnel) :
Le nom de la previews et son url utiliseront cette variable à la place du nom de la brancheDev interactiondéploiementPenser à changer la version dans lesetup.cfgpour que le pipeline de deploy se lancelancement en local pour tester le mode interactif :python -m pynestor preview --interactive --up
Package: py-nest-thermostat
Version:v0.0.5py-nest-thermostatPython CLI Nest Controller and Reporting Tool.Build it with me on Twitch:https://www.twitch.tv/datafrittataDisclaimer:This project is very much work in progress while in version 0 anything can change, anything can break and some parts of the code are probably very ugly. Feel free to test it, contribute (seeCONTRIBUTING.md), report bugsGet device stats:Set Device Temperature:Features:print device statsset target temperatureFuture Features:capture device statistics into a databaseplot device statistics over timesome ML?InstallationThe tool is intallable fromPyPIviapiporpipx. But you must first set up access via Google's Developer console (which currently costs a one time $5 fee and is a bit of a pain).Set Up Google and AuthorizationThis part of the process is a real pain, especially if you've never set up Authorization via Google. LuckilyWouter Nieuwerthmade a really niceguidewith pictures that I encourage you to check outGoogle Documentation LinksGoogle has some pretty extensive documentation:Nest Getting StartedDevice RegistrationOnce setup, you will be able to access your nest devicesc, and manage your authorizations in the following places:Nest Device AccessGoogle Developers ConsoleIf you have issues, and neither thestep by step guide from Wouternor the links above help you feel free to open an issue and if I have time I'll try and help out.Installpy-nest-thermostatIf you want to be able to access the tool from anywhere I recomment setting it up viapipx. Pipx will give you access topy-nestglobally while keeping it in an isolated python virtual environment. The best of both worlds really!You can install with pipx like so:pipxinstallpy-nest-thermostatCreate your credentials filenestexpects your credentials and other handy authentication parameters to be in an file namedconfig.yamland it should be placed at this location~/.py-nest-thermostat/. We might implement the possibility to pass a custom location later. If you're too impatient feel free to help out! :)You can find an example of this filehereIf you prefer to use regularpip, follow those steps:create a python3 virtual environment (withvenvorvirtualenv--up to you)activate the virtual environment (source /path/to/virtual/environment)pip install py-nest-thermostatUsageUntil I write some more extensive docs, once you have installed the tool use use the CLI--helpcommandnest--help