Spaces:
Sleeping
Sleeping
metadata
title: minimal-helium-experiment
emoji: 💻
colorFrom: blue
colorTo: red
sdk: docker
app_file: app/server.py
pinned: false
Minimal Browser Screenshot Experiment with Helium
This web application allows taking screenshots of websites using a headless browser and displaying them directly in the user interface.
Features
- Simple and responsive web interface
- URL input with default value pointing to Open LLM Leaderboard
- Screenshot capture via Helium (Chrome browser)
- Display of results in the interface
Technologies Used
- Backend: FastAPI, Helium
- Frontend: HTML/JS with Tailwind CSS
- Dependency Management: Poetry
- Deployment: Docker, Hugging Face Spaces
Local Installation
Prerequisites
- Python 3.10+
- Poetry
- Docker (optional)
Installation with Poetry
# Clone the repository
git clone [repo-url]
cd minimal-browser-screenshot-experiment
# Install dependencies
poetry install
# Launch the application
poetry run uvicorn app.server:app --host 0.0.0.0 --port 7860
Using Docker
# Build the Docker image
docker build -t minimal-browser-screenshot .
# Run the container
docker run -p 7860:7860 minimal-browser-screenshot
Deployment on Hugging Face Spaces
This application is designed to be easily deployed on a Hugging Face Space.
- Create a new Docker-type Space
- Associate this GitHub repository with your Space
- The Space will automatically use the provided Dockerfile to build and deploy the application
Usage
- Access the application through your browser
- Enter the URL of the site you want to screenshot (default: Open LLM Leaderboard)
- Click "Take a screenshot"
- Wait a few seconds for the headless browser to load the page and take the screenshot
- The screenshot appears in the interface
About Helium
Helium is a Python library that simplifies browser automation. It's an abstraction layer on top of Selenium that offers a simpler and more intuitive API. Helium was chosen to replace Playwright in this project to demonstrate its ease of use.