Public
Like
veo-feed
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data β all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v88View latest version
A web application that converts URLs into TikTok-style videos using AI-generated summaries and screenshots.
- Convert any URL into a video using Veo AI
- Fetch markdown content and screenshots from URLs
- Generate AI summaries using Gemini API
- TikTok-style scrolling feed with scroll-snap
- Customizable video generation prompts
βββ backend/
β βββ index.ts # Main Hono server
β βββ routes/
β β βββ videos.ts # Video generation endpoints
β β βββ static.ts # Static file serving
β βββ database/
β βββ migrations.ts # SQLite schema
β βββ queries.ts # Database operations
βββ frontend/
β βββ index.html # Main HTML template
β βββ index.tsx # React app entry point
β βββ components/
β β βββ App.tsx # Main app component
β β βββ VideoFeed.tsx # TikTok-style feed
β β βββ VideoCard.tsx # Individual video component
β β βββ URLInput.tsx # URL input form
β βββ style.css # Custom styles
βββ shared/
βββ types.ts # Shared TypeScript types
βββ utils.ts # Shared utility functions
POST /api/videos/generate- Generate video from URLGET /api/videos- Get all generated videosGET /api/videos/:id- Get specific videoDELETE /api/videos/:id- Delete video
GEMINI_API_KEY- Google Gemini API key for summaries and video generation (required)
- Get a Gemini API key from Google AI Studio
- Add the
GEMINI_API_KEYenvironment variable in Val Town - The application uses the Veo 3.0 Fast Generate Preview model for video generation
- The application uses external services:
https://markdownifyurl.val.run/for converting web pages to markdownhttps://screenshot.val.run/for taking page screenshots
- The application requires
https://www.npmjs.com/package/@google/genai
The app uses Google's gemini-flash-latest
The app uses Google's Veo 3.0 model (veo-3.0-fast-generate-preview) to create
TikTok-style videos:
- Content Processing: Fetches markdown and screenshots from URLs
- AI Summary: Uses Gemini to create engaging summaries
- Video Generation: Uses Veo to create vertical (9:16) videos under 30 seconds
- Polling: Monitors video generation progress (up to 10 minutes)
- Fallback: Uses placeholder video if generation fails
- Enter URLs in the input form
- Videos are generated automatically using:
- Markdown content from the URL
- Screenshot of the page
- AI-generated summary
- Custom video generation prompt
- Scroll through the TikTok-style feed
- Customize video prompts in the settings