# KanoDev
Use natural language to create a fully functional, tested and deployed cloud infrastructure with a single command!
This project streamlines the creation and deployment of cloud infrastructure. Simply describe your problem using natural language, and the system will automatically build, test and deploy a cloud architecture based on your prompt.
Error messages are forwarded back to GPT4 recursively and the system self-corrects itself until it passes all tests and gets deployed.
Current capabilities:
[✅] Test the proposed AWS architecture and deploy on a dev environement automatically. 🚀
[✅] Test and deploy any cloud architecture with Terraform. python-terraform. ⚙️
> ⚠️ Warning ⚠️ This project is in ALPHA developement and should NOT be used for direct deployments on the cloud. There are alot of security and monetary considerations.
## Table of Contents
- [KanoDev](#kanodev)
- [Table of Contents](#table-of-contents)
- [Requirements](#requirements)
- [Environment Variables](#environment-variables)
- [Installation](#installation)
- [Usage](#usage)
- [Generate Infrastructure](#generate-infrastructure)
- [Examples](#examples)
## Requirements
- OpenAI key with access to GPT-4
- AWS Account
- [Optional] Pinecone access
### Environment Variables
To use KanoDev, you will need to set up the following environment variables. These are required for the tool to interact with the OpenAI API, and your AWS account.
```bash
export OPENAI_API_KEY=<your key>
export AWS_ACCESS_KEY_ID=<your key>
export AWS_SECRET_ACCESS_KEY=<your key>
export AWS_DEFAULT_REGION=<your region>
```
Remember to replace <your key> with your actual keys and <your region> with your AWS region (e.g., us-west-2). Do not share these keys publicly.
Note: If you plan to use the optional Pinecone functionality, you might also need to include instructions for setting up Pinecone-related environment variables.
## Installation
```bash
pip install kanodev
```
## Usage
### Generate Infrastructure
```bash
kanodev generate --description "<your problem description>"
```
#### Examples
```bash
kanodev generate --description "I want to create a serverless architecture that can handle 1000 requests per second and store the data in a database"
```
```bash
kanodev generate --description "I want to create a serverless architecture that can handle 1000 requests per second and store the data in a database" --localstack
```
Raw data
{
"_id": null,
"home_page": "",
"name": "kanodev",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "GPT,AWS,Cloud,Infrastructure,Natural Language,OpenAI,KanoScale,KanoDev,Kano",
"author": "KanoScale",
"author_email": "<info@kanoscale.com>",
"download_url": "https://files.pythonhosted.org/packages/97/f5/402e2194ce9f64cecff65506af1c301f846e2845deb7da1e4e7ec70fd09e/kanodev-0.1.0.tar.gz",
"platform": null,
"description": "\n# KanoDev\n\nUse natural language to create a fully functional, tested and deployed cloud infrastructure with a single command!\nThis project streamlines the creation and deployment of cloud infrastructure. Simply describe your problem using natural language, and the system will automatically build, test and deploy a cloud architecture based on your prompt.\n\nError messages are forwarded back to GPT4 recursively and the system self-corrects itself until it passes all tests and gets deployed.\n\nCurrent capabilities:\n\n[\u2705] Test the proposed AWS architecture and deploy on a dev environement automatically. \ud83d\ude80\n[\u2705] Test and deploy any cloud architecture with Terraform. python-terraform. \u2699\ufe0f\n\n> \u26a0\ufe0f Warning \u26a0\ufe0f This project is in ALPHA developement and should NOT be used for direct deployments on the cloud. There are alot of security and monetary considerations.\n\n## Table of Contents\n\n- [KanoDev](#kanodev)\n - [Table of Contents](#table-of-contents)\n - [Requirements](#requirements)\n - [Environment Variables](#environment-variables)\n - [Installation](#installation)\n - [Usage](#usage)\n - [Generate Infrastructure](#generate-infrastructure)\n - [Examples](#examples)\n\n## Requirements\n\n- OpenAI key with access to GPT-4\n- AWS Account\n- [Optional] Pinecone access\n\n### Environment Variables\n\nTo use KanoDev, you will need to set up the following environment variables. These are required for the tool to interact with the OpenAI API, and your AWS account.\n\n```bash\nexport OPENAI_API_KEY=<your key>\nexport AWS_ACCESS_KEY_ID=<your key>\nexport AWS_SECRET_ACCESS_KEY=<your key>\nexport AWS_DEFAULT_REGION=<your region>\n```\n\nRemember to replace <your key> with your actual keys and <your region> with your AWS region (e.g., us-west-2). Do not share these keys publicly.\n\nNote: If you plan to use the optional Pinecone functionality, you might also need to include instructions for setting up Pinecone-related environment variables.\n\n## Installation\n\n```bash\npip install kanodev\n```\n\n## Usage\n\n### Generate Infrastructure\n\n```bash\nkanodev generate --description \"<your problem description>\"\n```\n\n#### Examples\n\n```bash\nkanodev generate --description \"I want to create a serverless architecture that can handle 1000 requests per second and store the data in a database\"\n```\n\n```bash\nkanodev generate --description \"I want to create a serverless architecture that can handle 1000 requests per second and store the data in a database\" --localstack\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "Use natural language to create a fully functional, tested and deployed cloud infrastructure with a single command!",
"version": "0.1.0",
"project_urls": null,
"split_keywords": [
"gpt",
"aws",
"cloud",
"infrastructure",
"natural language",
"openai",
"kanoscale",
"kanodev",
"kano"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "97f5402e2194ce9f64cecff65506af1c301f846e2845deb7da1e4e7ec70fd09e",
"md5": "bd6e2b8f7c1b182406f644fac6a740c0",
"sha256": "16a7b4f031741a57e29eb215fad51d76bc4468b8d7c216a12f2ddf12b094b578"
},
"downloads": -1,
"filename": "kanodev-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "bd6e2b8f7c1b182406f644fac6a740c0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17892,
"upload_time": "2023-05-14T23:45:07",
"upload_time_iso_8601": "2023-05-14T23:45:07.149871Z",
"url": "https://files.pythonhosted.org/packages/97/f5/402e2194ce9f64cecff65506af1c301f846e2845deb7da1e4e7ec70fd09e/kanodev-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-14 23:45:07",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "kanodev"
}