Package: carefree-drawboard
carefree-drawboard 🎨✨ Build performant, business ready web apps in pure Python.Documentation|ExamplesInstallationcarefree-drawboard🎨 requires the following to get started:Python 3.8+Node.js 18+To be exact, we need^14.13.1 || ^16 || >=18because of thetsconfck@2.1.1package.pipinstallcarefree-drawboard
npminstall--globalyarnAlthough we'll always try to help you install the frontend packages, it is recommended to install them beforehands because you can receive much more verbose:cfdrawinstallIf you are interested in the latest features, you may usepipto install from source as well:gitclonehttps://github.com/carefree0910/carefree-drawboard.gitcdcarefree-drawboard
pipinstall-e.Your firstcarefree-drawboard🎨 AppCreate a folder (e.g.,my_fancy_app) wherever you like, get into it, and runcfdrawinitThis command will write two files to your folder (my_fancy_app). After which you can run the app in development mode:cfdrawrunWhen you run this command for the first time and have not calledcfdraw installbefore, we will useyarnto install the JavaScript dependencies for you, which may be quite slow!And you should see your app running athttp://localhost:5123. Now you can play with the generatedapp.pyfile and see warm reload (yeah, not hot enough because we rely on thereloadprovided byuvicorn🤣).Notice that the generated template implements aGaussianBlurplugin, which requires an image to pop up. You can upload an image either by dragging it directly to the drawboard 🎨, or by clicking thePlusbutton at the top right corner and selectUpload Image.Demo VideoExamplesGetting Started, which is a more detailed tutorial to guide you step by step.Image Processing, which implements three common image processing plugins. It also shows how to use theIPluginGroupincarefree-drawboard🎨 to group the plugins together and make the UI cleaner.Stable Diffusion, which utilizes the famousdiffuserslibrary and implements two common SD plugins.Caption & Diffusion, which shows how can we combine two different kinds of models (Image Captioning&Stable Diffusion) and make them work together.Stable Diffusion Inpainting, which shows how can we implement complicated plugins likeStableDiffusionInpaintingvery easily.Stable Diffusion ControlNet, which shows how can we decouple complicated workflows likeControlNetinto separate, lightweight, and reusable plugins very easily.Carefree Creator, which contains a free, public-availabledemoof the real world business ready product we are selling. It is a web app with tons of AI magics, but still remains easy forcarefree-drawboard🎨 to implement them.Statuscarefree-drawboard🎨 is at a VERY early stage (it is launched in April 2023), so although it could be production ready (seeherefor more details), it does not have many real world use cases (yet).But we will rapidly update this project and launch new features every week (or, even everyday), so ⭐ star and 👀 watch this repository to stay up to date!ContributingIt might be the best to start from theContributingpage.If you are truly an enthusiast, you may check out ourRoadmap, pick up what you are interested, and create the corresponding PR!Style GuideIf you are still interested:carefree-drawboard🎨 adoptedblackandmypyto stylize its codes, so you may need to check the format, coding style and type hint with them before your codes could actually be merged.Q&AWhere are my creations stored?They are stored on your local machine, so you're 100% privacy secured!The default dir is~/.cache/carefree-draw, but you can change it manuallyWhy Using 🎨 All Around?Good question, so I asked GPT-4, it said:🎨 (Artist Palette) - This emoji represents creativity, design, and artistic expression, which are all key aspects of thecarefree-drawboard🎨 platform.Cool!Will there be a Discord Community?Many thanks toJSDu, who created aDiscord channelfor my projects!!如果有热心观众对这个项目感兴趣并愿意帮忙建立一个中文社区，欢迎联系我，我会非常感激的！！更新：热心观众（JSDu）出现啦！非常感谢！！！（猛戳这里加入我们！）Why do you build this project?Also checkDesign Philosophy.In short, I believe that:Infinite Drawboard can unleash Infinite possibilities.If we can usePythonto interact with it and even craft new plugins for it, it will be even better.So here comes thecarefree-drawboard🎨, which is aPythoninteractible/customizable Infinite Drawboard. 🎉My another motivation is that I love HuggingFace 🤗 models, and would love to use most if not all of them in one, single, integrated space. This actually inspires me the following idea: to build an 'AI Operation System' which can drive all the 'Softwares' (the AI models) and make them work together seamlessly.SeeBrainstormfor more details!My final goal is to makecarefree-drawboard🎨 a platform which can be used to build all kinds of AI applications. I know it will be a long journey but it is definitely worth trying.And the middle-term goal is to make 🤗 & 🎨 appear together more often. We may think 🤗🎨 as HuggingFace models using a powerful palette to create the world (with AI)!Creditsllunalabs, for the kindeness & community support.pynecone, which inspires me a lot.Stable Diffusion, the foundation of various image generation methods.Diffusers, the adopted library for theStable Diffusionexample.@liujs1, who provides me the nice looking icons.And You! Thank you for watching!