# Dialogflow CX Linter
<a href="https://github.com/googleapis/google-cloud-python/blob/main/README.rst#stability-levels" alt="preview">
<img src="https://img.shields.io/badge/support-stable-gold" /></a>
<a href="https://pypi.org/project/cxlint/" alt="preview">
<img src="https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10-blue" /></a>
\
Similar to [code linting](https://en.wikipedia.org/wiki/Lint_(software)), Dialogflow CX Agents can benefit from an automated linter to catch various common design defects when developing Agents.
The primary goal is to minimize common defects shipped to production by proactively catching and fixing them.
# Quick Start
In order to use this library, you first need to go through the following steps:
1. Select or create a [Cloud Platform](https://console.cloud.google.com/project) project.
2. [Enable billing](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project) for your project.
3. [Setup Authentication.](https://googleapis.dev/python/google-api-core/latest/auth.html)
## Mac/Linux
``` bash
pip install virtualenv
virtualenv <your-env>
source <your-env>/bin/activate
<your-env>/bin/pip install google-cloud-dialogflow-cx
```
## Windows
-------
```bash
pip install virtualenv
virtualenv <your-env>
<your-env>\Scripts\activate
<your-env>\Scripts\pip.exe install google-cloud-dialogflow-cx
```
# Authentication
Authentication can vary depending on how and where you are interacting with Dialogfow CX Linter.
## Google Colab
If you're using cxlint with a [Google Colab](https://colab.research.google.com/) notebook, you can add the following to the top of your notebook for easy authentication
``` python
project_id = '<YOUR_GCP_PROJECT_ID>'
# this will launch an interactive prompt that allows you to auth with GCP in a browser
!gcloud auth application-default login --no-launch-browser
# this will set your active project to the `project_id` above
!gcloud auth application-default set-quota-project $project_id
```
After running the above, Colab will pick up your credentials from the environment. No need to use Service Account keys!
# Rules
Curent [list of rules](docs/RULES.md) that are being implemented for CX Linter.<br>
If you have an idea for a new rule, please submit a Feature Request!
# Examples
Code samples and snippets live in the [examples/](examples) folder.
# Supported Python Versions
Python >= 3.8
# Contributing
We welcome any contributions or feature requests you would like to submit!
1. Fork the Project
2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
3. Commit your Changes (git commit -m 'Add some AmazingFeature')
4. Push to the Branch (git push origin feature/AmazingFeature)
5. Open a Pull Request
License
=======
Distributed under the Apache 2.0 License. See [LICENSE](../LICENSE.txt) for more information.
<!-- MARKDOWN LINKS & IMAGES -->
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
Raw data
{
"_id": null,
"home_page": "https://github.com/GoogleCloudPlatform/cxlint",
"name": "cxlint",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6, <4",
"maintainer_email": "",
"keywords": "dialogflow,cx,google,bot,chatbot,linter,dfcx",
"author": "Patrick Marlow",
"author_email": "pmarlow@google.com",
"download_url": "https://files.pythonhosted.org/packages/21/88/8d6d6a771ee314ff28ed480209905162afe150f61a8fa79ef0f8a890a91e/cxlint-1.0.4.tar.gz",
"platform": null,
"description": "# Dialogflow CX Linter\n<a href=\"https://github.com/googleapis/google-cloud-python/blob/main/README.rst#stability-levels\" alt=\"preview\">\n<img src=\"https://img.shields.io/badge/support-stable-gold\" /></a>\n<a href=\"https://pypi.org/project/cxlint/\" alt=\"preview\">\n<img src=\"https://img.shields.io/badge/python-3.8%20%7C%203.9%20%7C%203.10-blue\" /></a>\n\n\\\nSimilar to [code linting](https://en.wikipedia.org/wiki/Lint_(software)), Dialogflow CX Agents can benefit from an automated linter to catch various common design defects when developing Agents.\nThe primary goal is to minimize common defects shipped to production by proactively catching and fixing them.\n\n\n# Quick Start\n\nIn order to use this library, you first need to go through the following steps:\n\n1. Select or create a [Cloud Platform](https://console.cloud.google.com/project) project.\n2. [Enable billing](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project) for your project.\n3. [Setup Authentication.](https://googleapis.dev/python/google-api-core/latest/auth.html)\n\n## Mac/Linux\n``` bash\npip install virtualenv\nvirtualenv <your-env>\nsource <your-env>/bin/activate\n<your-env>/bin/pip install google-cloud-dialogflow-cx\n```\n\n## Windows\n-------\n\n```bash\npip install virtualenv\nvirtualenv <your-env>\n<your-env>\\Scripts\\activate\n<your-env>\\Scripts\\pip.exe install google-cloud-dialogflow-cx\n```\n\n# Authentication\nAuthentication can vary depending on how and where you are interacting with Dialogfow CX Linter.\n\n## Google Colab\nIf you're using cxlint with a [Google Colab](https://colab.research.google.com/) notebook, you can add the following to the top of your notebook for easy authentication\n\n``` python\nproject_id = '<YOUR_GCP_PROJECT_ID>'\n\n# this will launch an interactive prompt that allows you to auth with GCP in a browser\n!gcloud auth application-default login --no-launch-browser\n\n# this will set your active project to the `project_id` above\n!gcloud auth application-default set-quota-project $project_id\n```\n\nAfter running the above, Colab will pick up your credentials from the environment. No need to use Service Account keys!\n\n# Rules\n\nCurent [list of rules](docs/RULES.md) that are being implemented for CX Linter.<br>\nIf you have an idea for a new rule, please submit a Feature Request!\n\n# Examples\n\nCode samples and snippets live in the [examples/](examples) folder.\n\n# Supported Python Versions\nPython >= 3.8\n\n# Contributing\nWe welcome any contributions or feature requests you would like to submit!\n\n1. Fork the Project\n2. Create your Feature Branch (git checkout -b feature/AmazingFeature)\n3. Commit your Changes (git commit -m 'Add some AmazingFeature')\n4. Push to the Branch (git push origin feature/AmazingFeature)\n5. Open a Pull Request\n\nLicense\n=======\nDistributed under the Apache 2.0 License. See [LICENSE](../LICENSE.txt) for more information.\n\n<!-- MARKDOWN LINKS & IMAGES -->\n<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "A static code analyzer that provides automated quality control for Dialogflow CX Agents",
"version": "1.0.4",
"split_keywords": [
"dialogflow",
"cx",
"google",
"bot",
"chatbot",
"linter",
"dfcx"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9ed5b3d1f27afddc935858c8fc568d4d7d44cf48e059b2888b9c75006c6f6c06",
"md5": "685ed147281234f1135586c838df243c",
"sha256": "4a398ac3c2e72d8d7c152568fd5754db587d9e4b039db5def4d8c99ce318a860"
},
"downloads": -1,
"filename": "cxlint-1.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "685ed147281234f1135586c838df243c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6, <4",
"size": 52988,
"upload_time": "2023-04-12T03:58:51",
"upload_time_iso_8601": "2023-04-12T03:58:51.407801Z",
"url": "https://files.pythonhosted.org/packages/9e/d5/b3d1f27afddc935858c8fc568d4d7d44cf48e059b2888b9c75006c6f6c06/cxlint-1.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "21888d6d6a771ee314ff28ed480209905162afe150f61a8fa79ef0f8a890a91e",
"md5": "cb3a92b2ee226187387a02da64611adc",
"sha256": "53ce45dd3424f814b1fc4495ea7a369cc135f5075e294958737797fd46d27166"
},
"downloads": -1,
"filename": "cxlint-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "cb3a92b2ee226187387a02da64611adc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6, <4",
"size": 136200,
"upload_time": "2023-04-12T03:58:53",
"upload_time_iso_8601": "2023-04-12T03:58:53.432519Z",
"url": "https://files.pythonhosted.org/packages/21/88/8d6d6a771ee314ff28ed480209905162afe150f61a8fa79ef0f8a890a91e/cxlint-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-12 03:58:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "GoogleCloudPlatform",
"github_project": "cxlint",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "cxlint"
}