Generate immersive 360° equirectangular panoramas from a text prompt or a reference image, and explore them directly in the browser with a draggable panoramic viewer.
Powered by fal.ai using OpenAI's gpt-image-2 and gpt-image-2/edit models.
- Text → 360°: your prompt is wrapped as
360 equirectangular image of <your scene>. Seamless 2:1 aspect ratio, ...and sent toopenai/gpt-image-2. - Image → 360°: drop a reference image and it's sent to
openai/gpt-image-2/editwith a panorama-expansion instruction. - The returned image is rendered onto an inverted sphere in three.js so you can drag to look around and scroll to zoom.
cp .env.example .env.local
# put your key in .env.local
# FAL_KEY=fal_...
pnpm install # or npm install / yarn
pnpm devOpen http://localhost:3000.
| Path | Description |
|---|---|
/ |
Main UI: viewer, prompt bar, sidebar |
/api/generate |
POST — { prompt, imageUrl?, quality? } → { url } |
/api/upload |
POST — multipart file upload to fal.storage |
- Next.js 15 (App Router, Node runtime for API routes)
- React 19
- Tailwind CSS 4
- three.js (panorama sphere)
@fal-ai/clientfor queue + storage