Presto - Transform your ideas with AI
Presto is an AI-powered tool that can convert hand-drawn scribbles to quality sketches, photos, paintings, and more to help you quickly iterate on ideas.
Built using Next.js, TypeScript, and Tailwind.
Powered by Vercel, Replicate, and Upload.
How it Works
Presto uses an ML model called ControlNet to convert hand-drawn scribbles to photos and sketches. This application provides the ability to draw a scribble, or upload an image of a scribble, along with a 1-3 word description of what you draw which will be converted using ControlNet. The ML model is hosted and run through Replicate. Uploaded scribbles are stored on Upload.
Deploy
Run your own version of Presto by deploying on Vercel.
Running Locally
Clone the Repository
git clone https://github.com/haardikk21/presto
Install pnpm and dependencies
If you don't already have pnpm
, install it by following the guide here - https://pnpm.io/installation
Then, install the dependencies
pnpm install
Get Replicate API Key
- Go to Replicate and make an account
- Click on
Account
in the top right and take a note of yourAPI Token
Get Upload.io API Key
- Go to Upload and make an account
- Click on
API Keys
in the top right and take a note of yourPublic API Key
Store API Keys in .env
Copy .env.example
to .env
and add REPLICATE_API_KEY
and NEXT_PUBLIC_UPLOAD_PUBLIC_KEY
that you got from the above steps.
- Run the application
pnpm dev
The app will now be available at http://localhost:3000.
Contributions
Contributions are open to all. Feel free to open issues and/or pull requests.
Contact
Reach out to me on Twitter @haardikkk if you have any questions, ideas, or suggestions!
Acknowledgements
- @nutlope for inspiration through RoomGPT
License
This project is licensed under the open source MIT License.