Drop in a screenshot and convert it to clean code (HTML/Tailwind/React/Vue)
See the codeA simple tool to convert screenshots, mockups and Figma designs into clean, functional code using AI. Now supporting Claude Sonnet 3.5 and GPT-4O!
https://github.com/abi/screenshot-to-code/assets/23818/6cebadae-2fe3-4986-ac6a-8fb9db030045
Supported stacks:
Supported AI models:
See the Examples section below for more demos.
We also just added experimental support for taking a video/screen recording of a website in action and turning that into a functional prototype.
Follow me on Twitter for updates.
Try it live on the hosted version (paid).
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 poetry if you don't have it):
cd backend
echo "OPENAI_API_KEY=sk-your-key" > .env
echo "ANTHROPIC_API_KEY=your-key" > .env
poetry install
poetry shell
poetry run uvicorn main:app --reload --port 7001
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:
cd frontend
yarn
yarn dev
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.local
For debugging purposes, if you don't want to waste GPT4-Vision credits, you can run the backend in mock mode (which streams a pre-recorded response):
MOCK=true poetry run uvicorn main:app --reload --port 7001
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.
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/v1NYTimes
| Original | Replica |
|---|---|
Instagram page (with not Taylor Swift pics)
https://github.com/abi/screenshot-to-code/assets/23818/503eb86a-356e-4dfc-926a-dabdb1ac7ba1
Hacker News but it gets the colors wrong at first so we nudge it
https://github.com/abi/screenshot-to-code/assets/23818/3fec0f77-44e8-4fb3-a769-ac7410315e5d
π Try it here (paid). Or see Getting Started for local install instructions to use with your own API keys.
8,696 followers Β· starred Nov 2024
169 followers Β· starred Oct 2024
84 followers Β· starred Nov 2024
23 followers Β· starred Nov 2024
Drop in a screenshot and convert it to clean code (HTML/Tailwind/React/Vue)
See the codeA simple tool to convert screenshots, mockups and Figma designs into clean, functional code using AI. Now supporting Claude Sonnet 3.5 and GPT-4O!
https://github.com/abi/screenshot-to-code/assets/23818/6cebadae-2fe3-4986-ac6a-8fb9db030045
Supported stacks:
Supported AI models:
See the Examples section below for more demos.
We also just added experimental support for taking a video/screen recording of a website in action and turning that into a functional prototype.
Follow me on Twitter for updates.
Try it live on the hosted version (paid).
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 poetry if you don't have it):
cd backend
echo "OPENAI_API_KEY=sk-your-key" > .env
echo "ANTHROPIC_API_KEY=your-key" > .env
poetry install
poetry shell
poetry run uvicorn main:app --reload --port 7001
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:
cd frontend
yarn
yarn dev
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.local
For debugging purposes, if you don't want to waste GPT4-Vision credits, you can run the backend in mock mode (which streams a pre-recorded response):
MOCK=true poetry run uvicorn main:app --reload --port 7001
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.
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/v1NYTimes
| Original | Replica |
|---|---|
Instagram page (with not Taylor Swift pics)
https://github.com/abi/screenshot-to-code/assets/23818/503eb86a-356e-4dfc-926a-dabdb1ac7ba1
Hacker News but it gets the colors wrong at first so we nudge it
https://github.com/abi/screenshot-to-code/assets/23818/3fec0f77-44e8-4fb3-a769-ac7410315e5d
π Try it here (paid). Or see Getting Started for local install instructions to use with your own API keys.
8,696 followers Β· starred Nov 2024
169 followers Β· starred Oct 2024
84 followers Β· starred Nov 2024
23 followers Β· starred Nov 2024