<p align="center"><a href=""><img alt="AISandbox" src="public/assets/editor.svg" width="60%"/></a></p>
<p align="center"><a href="aisandbox.app">aisandbox.app</a></p>
<hr>
<p align="center">( In Development, pre-alpha ) Something like Figma, but for designing AI systems.</p>
<p align="center">
<a href="https://github.com/Shubhamai/AISandbox/blob/master/LICENSE">
<img alt="Excalidraw is released under the MIT license." src="https://img.shields.io/badge/license-MIT-blue.svg" />
</a>
</p>
<hr>
## About
AISandbox is a node-based editor that allows creating an architecture of multiple models with inputs and outputs to perform a range of tasks. Think of Figma but for designing AI systems graphically.
Note that is still in development, pre-alpha.
## Documentation
To run the graph as an API, the code is programmatically generated in the UI, but here's a sample code
```py
import requests
import json
payload = json.dumps(
{"data": [{"id": "TextInputNode-1", "data": {"text": "Hello World"}}]}
)
headers = {
"Content-Type": "application/json",
"Authorization": "YOUR_API_KEY",
"Project": "YOUR_PROJECT_ID",
}
response = requests.request("POST", "https://aisandbox.app/api/v1/execute", headers=headers, data=payload)
```
## Tech Stack
### Front end
- [Nextjs 13](https://nextjs.org/docs) as the web framework.
- [shadcn ui](https://ui.shadcn.com/) for the UI components.
- [reactflow](https://reactflow.dev/) for the node editor.
- [Lucide](https://lucide.dev/) for icons.
- [zustand](https://zustand-demo.pmnd.rs/) for state management.
#### Backend
- [Supabase](https://supabase.com/) for user authentication and serves as the main database.
- [Stripe](https://stripe.com/) for Payments.
- [OpenAI](https://openai.com/) and [Replicate](https://replicate.com/) to run most of the models.
### Infrastructure
- The site is deployed on [cloudflare](https://www.cloudflare.com/).
## Self Hosting
**(In progress)**
To self-host this application ( at least some of it ), follow the steps :
- Fill up the following API keys in `.env.example`, then rename it to `.env`.
- Make an account of supabase, and create the following DBs with types provided in [](./types_db.ts)
- Run `pnpm dev`.
## Acknowledgements
- Thanks to [Resend](https://resend.com/home), [Skiff](https://skiff.com/), [Supabase](https://supabase.com/) and [Figma](https://figma.com/) for side UI, design and landing page inspirations.
- Thanks to [Sniffnet](https://github.com/GyulyVGC/sniffnet/), [nextjs-subscription-payments](https://github.com/vercel/nextjs-subscription-payments) for readme, code structure.
Raw data
{
"_id": null,
"home_page": "https://github.com/shubhamai/aisandbox",
"name": "AISandbox",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "artificial intelligence",
"author": "Shubhamai",
"author_email": "shubham.aiengineer@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/5a/80/51abb68d73435240bb56099f6b0ebce82b82ad8a3f807b8f4e38c33ca85b/AISandbox-0.0.1.tar.gz",
"platform": null,
"description": "<p align=\"center\"><a href=\"\"><img alt=\"AISandbox\" src=\"public/assets/editor.svg\" width=\"60%\"/></a></p>\n<p align=\"center\"><a href=\"aisandbox.app\">aisandbox.app</a></p>\n<hr>\n\n<p align=\"center\">( In Development, pre-alpha ) Something like Figma, but for designing AI systems.</p>\n\n<p align=\"center\">\n <a href=\"https://github.com/Shubhamai/AISandbox/blob/master/LICENSE\">\n <img alt=\"Excalidraw is released under the MIT license.\" src=\"https://img.shields.io/badge/license-MIT-blue.svg\" />\n </a>\n</p>\n\n<hr>\n\n## About\n\nAISandbox is a node-based editor that allows creating an architecture of multiple models with inputs and outputs to perform a range of tasks. Think of Figma but for designing AI systems graphically.\n\nNote that is still in development, pre-alpha.\n\n## Documentation\n\nTo run the graph as an API, the code is programmatically generated in the UI, but here's a sample code\n\n```py\nimport requests\nimport json\n\npayload = json.dumps(\n {\"data\": [{\"id\": \"TextInputNode-1\", \"data\": {\"text\": \"Hello World\"}}]}\n)\n\nheaders = {\n \"Content-Type\": \"application/json\",\n \"Authorization\": \"YOUR_API_KEY\",\n \"Project\": \"YOUR_PROJECT_ID\",\n}\n\nresponse = requests.request(\"POST\", \"https://aisandbox.app/api/v1/execute\", headers=headers, data=payload)\n```\n\n## Tech Stack\n\n### Front end \n- [Nextjs 13](https://nextjs.org/docs) as the web framework. \n- [shadcn ui](https://ui.shadcn.com/) for the UI components. \n- [reactflow](https://reactflow.dev/) for the node editor.\n- [Lucide](https://lucide.dev/) for icons.\n- [zustand](https://zustand-demo.pmnd.rs/) for state management.\n\n#### Backend\n- [Supabase](https://supabase.com/) for user authentication and serves as the main database. \n- [Stripe](https://stripe.com/) for Payments.\n- [OpenAI](https://openai.com/) and [Replicate](https://replicate.com/) to run most of the models.\n\n### Infrastructure\n\n- The site is deployed on [cloudflare](https://www.cloudflare.com/).\n\n\n## Self Hosting\n\n**(In progress)**\n\nTo self-host this application ( at least some of it ), follow the steps :\n\n- Fill up the following API keys in `.env.example`, then rename it to `.env`.\n- Make an account of supabase, and create the following DBs with types provided in [](./types_db.ts)\n- Run `pnpm dev`.\n\n## Acknowledgements\n\n- Thanks to [Resend](https://resend.com/home), [Skiff](https://skiff.com/), [Supabase](https://supabase.com/) and [Figma](https://figma.com/) for side UI, design and landing page inspirations.\n- Thanks to [Sniffnet](https://github.com/GyulyVGC/sniffnet/), [nextjs-subscription-payments](https://github.com/vercel/nextjs-subscription-payments) for readme, code structure. \n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Prototyping AI architectures in a node based editor.",
"version": "0.0.1",
"project_urls": {
"Homepage": "https://github.com/shubhamai/aisandbox"
},
"split_keywords": [
"artificial",
"intelligence"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5a8051abb68d73435240bb56099f6b0ebce82b82ad8a3f807b8f4e38c33ca85b",
"md5": "eb5f4032a9f2ca8ec5250164b2aaaf54",
"sha256": "5edef186b2f6d48b6d9f879d8b6cd91caa5d87049fb6e378622d21af3fff7a17"
},
"downloads": -1,
"filename": "AISandbox-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "eb5f4032a9f2ca8ec5250164b2aaaf54",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3851,
"upload_time": "2023-07-22T08:39:49",
"upload_time_iso_8601": "2023-07-22T08:39:49.034935Z",
"url": "https://files.pythonhosted.org/packages/5a/80/51abb68d73435240bb56099f6b0ebce82b82ad8a3f807b8f4e38c33ca85b/AISandbox-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-22 08:39:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "shubhamai",
"github_project": "aisandbox",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "aisandbox"
}