# 👋 Hi there, this is <a href="https://querystar.io/" style="color: #AF3BEA;"><img src="./assets/logo.png" height="28"> QueryStar</a>
### Python-First Solution to Develop Bots
QueryStar lets you easily set up triggers and actions to automate workflows.
<img src="https://raw.githubusercontent.com/modelstar-labs/querystar/main/assets/diagram.png" alt="Slack-GSheets Automation" width=500 href="none"></img>
Something like
> Saving Slack new messages that must contain 'hello' to a Google sheet
can be easily done:
```python
# bot.py
import querystar as qs
data = qs.triggers.slack.new_message(channel_id='MyChannelID',
trigger_string='hello')
qs.actions.slack.new_message(
spreadsheet_id='MySheetID',
worksheet_id='Sheet1',
data=[[data['user'], data['text']]])
```
QueryStar can help you:
- automate workflows
- develop Slack bots
- integrate SaaS data to your own apps
- run background jobs
- schedule tasks
- ...
<img src="https://raw.githubusercontent.com/modelstar-labs/querystar/readme/assets/readme-demo-short.gif" alt="Slack-GSheets Automation" width=500 href="none"></img>
## Get Started
### Installation
```
pip install querystar
```
### Setup Slack (or other apps) Connection
This step takes 3-5 mins:
- Crete a free account at [querystar.io](https://querystar.io)
- Add any SaaS tools that you want to automate in your QueryStar workspace. (Head over to [quickstart](https://querystar.io/docs/quickstart/token/#step-2-connect-to-slack) in our docs for instructions.)
- Get a QueryStar token. ([Instruction](https://querystar.io/docs/quickstart/token/#step-3-get-querystar-token))
- Add the token as an environment variable on your dev machine.
> [!IMPORTANT]
> Your Data is Safe on QueryStar backend:
> QueryStar takes care of 3rd party API integration. It only monitors trigger events and passes action data back to the apps of your choice. Your data is **NOT** stored or logged in any form or capacity. Please see [Privacy Policy](https://querystar.io/Privacy) for more details.
### Build and Run a Bot
- Create a new file `app.py` and add this code:
```py
# app.py
import querystar as qs
message = qs.triggers.slack.new_message(channel_id='MyChannelID')
print(message)
```
- Add QueryStar app to your Slack channel, and copy the channel ID ([Instruction](https://querystar.io/docs/quickstart/coding/#step-2-add-querystar-app-to-the-channel))
- Replace `MyChannelID` with the channel id.
- Run the bot:
```bash
$ querystar run app.py
```
## Get Inspired
Because you use Python, there's much more you can build.
- A LLM-powered (Large Language Model) Slack bot: [tutorial](https://querystar.io/docs/tutorials/llamaindex-doc-bot/).
Raw data
{
"_id": null,
"home_page": "https://querystar.io",
"name": "querystar",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Adithya Krishnan",
"author_email": "krishsandeep@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/8e/0f/187de522b48f86f6a103dd75c16a21cdd393ce9f64aee5030f92ecc91aa1/querystar-0.3.11.tar.gz",
"platform": null,
"description": "# \ud83d\udc4b Hi there, this is <a href=\"https://querystar.io/\" style=\"color: #AF3BEA;\"><img src=\"./assets/logo.png\" height=\"28\"> QueryStar</a> \n\n### Python-First Solution to Develop Bots\n\nQueryStar lets you easily set up triggers and actions to automate workflows.\n\n<img src=\"https://raw.githubusercontent.com/modelstar-labs/querystar/main/assets/diagram.png\" alt=\"Slack-GSheets Automation\" width=500 href=\"none\"></img>\n\nSomething like \n\n> Saving Slack new messages that must contain 'hello' to a Google sheet\n\ncan be easily done:\n```python\n# bot.py\nimport querystar as qs\n\ndata = qs.triggers.slack.new_message(channel_id='MyChannelID',\n trigger_string='hello')\n\nqs.actions.slack.new_message(\n spreadsheet_id='MySheetID',\n worksheet_id='Sheet1',\n data=[[data['user'], data['text']]])\n```\n\nQueryStar can help you:\n- automate workflows\n- develop Slack bots\n- integrate SaaS data to your own apps\n- run background jobs\n- schedule tasks\n- ...\n\n<img src=\"https://raw.githubusercontent.com/modelstar-labs/querystar/readme/assets/readme-demo-short.gif\" alt=\"Slack-GSheets Automation\" width=500 href=\"none\"></img>\n\n## Get Started\n\n### Installation\n\n```\npip install querystar\n```\n\n### Setup Slack (or other apps) Connection \n\nThis step takes 3-5 mins:\n- Crete a free account at [querystar.io](https://querystar.io)\n- Add any SaaS tools that you want to automate in your QueryStar workspace. (Head over to [quickstart](https://querystar.io/docs/quickstart/token/#step-2-connect-to-slack) in our docs for instructions.)\n- Get a QueryStar token. ([Instruction](https://querystar.io/docs/quickstart/token/#step-3-get-querystar-token))\n- Add the token as an environment variable on your dev machine.\n\n> [!IMPORTANT]\n> Your Data is Safe on QueryStar backend:\n> QueryStar takes care of 3rd party API integration. It only monitors trigger events and passes action data back to the apps of your choice. Your data is **NOT** stored or logged in any form or capacity. Please see [Privacy Policy](https://querystar.io/Privacy) for more details.\n\n\n### Build and Run a Bot\n\n- Create a new file `app.py` and add this code:\n ```py\n # app.py\n import querystar as qs\n \n message = qs.triggers.slack.new_message(channel_id='MyChannelID')\n print(message)\n ```\n\n- Add QueryStar app to your Slack channel, and copy the channel ID ([Instruction](https://querystar.io/docs/quickstart/coding/#step-2-add-querystar-app-to-the-channel))\n- Replace `MyChannelID` with the channel id. \n- Run the bot:\n \n ```bash\n $ querystar run app.py\n ```\n\n## Get Inspired\n\nBecause you use Python, there's much more you can build.\n\n- A LLM-powered (Large Language Model) Slack bot: [tutorial](https://querystar.io/docs/tutorials/llamaindex-doc-bot/).\n\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Python framework for workflow automations.",
"version": "0.3.11",
"project_urls": {
"Homepage": "https://querystar.io",
"Repository": "https://github.com/modelstar-labs/querystar"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4033361feb7992bf5aed2cf9810d94d155d69eed0daccd3c8f641b246b011bc6",
"md5": "221f2f18b6bf486a22a925cbda2254d3",
"sha256": "7ceb9f71689ef5e7089702f17ab65e17223fe274c792d65f45b6f70925fc5c87"
},
"downloads": -1,
"filename": "querystar-0.3.11-py3-none-any.whl",
"has_sig": false,
"md5_digest": "221f2f18b6bf486a22a925cbda2254d3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 19432,
"upload_time": "2023-09-25T14:56:58",
"upload_time_iso_8601": "2023-09-25T14:56:58.176541Z",
"url": "https://files.pythonhosted.org/packages/40/33/361feb7992bf5aed2cf9810d94d155d69eed0daccd3c8f641b246b011bc6/querystar-0.3.11-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8e0f187de522b48f86f6a103dd75c16a21cdd393ce9f64aee5030f92ecc91aa1",
"md5": "12a1404152838652659a9faf380d8de6",
"sha256": "464bd82003840f56b8f3ac4526e9256a871a2be252436f1ce279d66bed4c1da2"
},
"downloads": -1,
"filename": "querystar-0.3.11.tar.gz",
"has_sig": false,
"md5_digest": "12a1404152838652659a9faf380d8de6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 15608,
"upload_time": "2023-09-25T14:56:59",
"upload_time_iso_8601": "2023-09-25T14:56:59.553700Z",
"url": "https://files.pythonhosted.org/packages/8e/0f/187de522b48f86f6a103dd75c16a21cdd393ce9f64aee5030f92ecc91aa1/querystar-0.3.11.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-25 14:56:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "modelstar-labs",
"github_project": "querystar",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "querystar"
}