If you prefer to run the backend on a different port, update VITE_WS_BACKEND_URL in frontend/.env.local
Docker
If you have Docker installed on your system, in the root directory, run:
echo "OPENAI_API_KEY=sk-your-key" > .env
docker-compose up -d --build
The app will be up and running at http://localhost:5173. Note that you can’t develop the application with this setup as the file changes won’t trigger a rebuild.
🙋♂️ FAQs
I’m running into an error when setting up the backend. How can I fix it?Try this. If that still doesn’t work, open an issue.
How can I configure an OpenAI proxy? - If you’re not able to access the OpenAI API directly (due to e.g. country restrictions), you can try a VPN or you can configure the OpenAI base URL to use a proxy: Set OPENAI_BASE_URL in the backend/.env or directly in the UI in the settings dialog. Make sure the URL has “v1” in the path so it should look like this: https://xxx.xxxxx.xxx/v1
How can I update the backend host that my front-end connects to? - Configure VITE_HTTP_BACKEND_URL and VITE_WS_BACKEND_URL in front/.env.local For example, set VITE_HTTP_BACKEND_URL=http://124.10.20.1:7001
Seeing UTF-8 errors when running the backend? - On windows, open the .env file with notepad++, then go to Encoding and select UTF-8.
How can I provide feedback? For feedback, feature requests and bug reports, open an issue or ping me on Twitter.
screenshot-to-code
A simple tool to convert screenshots, mockups and Figma designs into clean, functional code using AI. Now supporting Gemini 3 and Claude Opus 4.5!
https://github.com/user-attachments/assets/85b911c0-efea-4957-badb-daa97ec402ad
Supported stacks:
Supported AI models:
See the Examples section below for more demos.
We have experimental support for taking a video/screen recording of a website in action and turning that into a functional prototype.
Learn more about video here.
Follow me on Twitter for updates.
🌍 Hosted Version
Try it live on the hosted version (paid).
🛠 Getting Started
The app has a React/Vite frontend and a FastAPI backend.
Keys needed:
If you’d like to run the app with Ollama open source models (not recommended due to poor quality results), follow this comment.
Run the backend (I use Poetry for package management -
pip install --upgrade poetryif you don’t have it):You can also set up the keys using the settings dialog on the front-end (click the gear icon after loading the frontend).
Run the frontend:
Open http://localhost:5173 to use the app.
If you prefer to run the backend on a different port, update VITE_WS_BACKEND_URL in
frontend/.env.localDocker
If you have Docker installed on your system, in the root directory, run:
The app will be up and running at http://localhost:5173. Note that you can’t develop the application with this setup as the file changes won’t trigger a rebuild.
🙋♂️ FAQs
backend/.envor directly in the UI in the settings dialog. Make sure the URL has “v1” in the path so it should look like this:https://xxx.xxxxx.xxx/v1📚 Examples
NYTimes
Instagram
https://github.com/user-attachments/assets/a335a105-f9cc-40e6-ac6b-64e5390bfc21
Hacker News
https://github.com/user-attachments/assets/205cb5c7-9c3c-438d-acd4-26dfe6e077e5