Armazenamento de arquivos integrado
Permita que as pessoas enviem arquivos para o seu app
Fotos, documentos e vídeos, guardados com segurança junto ao seu app. Sem buckets, chaves ou contas extras. Basta dizer à IA o que você precisa.
Enviar arquivos
Arraste e solte ou clique para enviar
Como funciona
Basta pedir
Diga o que você quer que as pessoas enviem. A IA ativa o armazenamento e cria a tela de envio.
Nada para se cadastrar
Sem conta na AWS, Firebase ou Cloudinary. O armazenamento vem com o seu plano da VibeDream.
Privado por padrão
Cada projeto tem seu próprio espaço, e os envios passam por links assinados de curta duração.
O que as pessoas criam com ele
Fotos e galerias
Fotos de perfil, portfólios, fotos de produtos e antes e depois.
Documentos
PDFs, faturas, contratos e formulários que seus clientes enviam para você.
Vídeos curtos
Tutoriais, depoimentos e clipes que tocam dentro do seu app.
Para quem lê código
A IA adiciona uma pequena rota ao seu backend em FastAPI que entrega ao navegador um link de envio de curta duração. O guia de armazenamento tem o padrão completo.
# backend/main.py
import os
import httpx
from pydantic import BaseModel
class UploadRequest(BaseModel):
filename: str
mime_type: str
@app.post("/api/upload-url")
async def get_upload_url(body: UploadRequest):
async with httpx.AsyncClient() as client:
res = await client.post(
f"{os.getenv('STORAGE_API_URL')}/presigned-upload",
json={"filename": body.filename, "mimeType": body.mime_type},
headers={"X-Storage-Token": os.getenv("STORAGE_API_TOKEN", "")},
)
res.raise_for_status()
return res.json()Perguntas frequentes
How much storage do I get?
Storage comes with your plan: 25GB on All Access Mini, Unlimited on All Access.
Do I need an AWS, Firebase or Cloudinary account?
No. Storage is built into VibeDream. The AI sets it up for your project the first time you ask for uploads.
Are my users' files private?
Each project gets its own storage space. Uploads use short-lived signed links, and your storage key stays on the server, never in the browser.