Creative Hub overview

/creative-hub = asset library + AI studio. Upload, organize, generate (images, videos, avatars, TTS), use in Campaign Creator. Drive-backed.

Written By Salvatore Sinigaglia

Last updated About 1 hour ago

/creative-hub = asset library + AI studio. Upload, organize, generate (images, videos, avatars, TTS), use in Campaign Creator. Drive-backed.

Creative Hub overview

/creative-hub is the central asset library + AI generation studio for ad creatives. Three capabilities in one place: upload + organize files (images, videos, documents), AI generate new creatives (provider catalog: 6 image + 6 video + 3 avatar + 3 TTS + 1 compositing), and use in Campaign Creator (cross-link to PRD-15 cc-*). Storage backed by Google Drive (Service Account, Shared Drive). RBAC via Wevion roles + Drive permissions.

The Creative Hub studio surfaces the full provider catalog described below. An older /generate/* API route still exists but exposes only a subset of providers (image flux_2_pro / gpt_image_1_5, video luma_ray3 / runway_gen4, TTS elevenlabs / openai_tts); for the complete catalog use the studio surface.

Who is this for

Mediabuyers + creative ops who need a single place to manage every ad creative β€” uploaded by team, generated by AI, ready to drop into a campaign launch.

What you can do

Upload + organize

  • Drag-drop images, videos, documents into folders
  • Folder hierarchy under your user root + team folders
  • Drive-backed storage (files survive Wevion outages; teammates can open in Drive if shared)

AI generate

5 generation types (provider catalog per providers/creative/types.ts):

TypeProvidersWhat it does
Imageseedream_4 (default) / seedream_4_5 / nano_banana_pro / nano_banana / flux_2_pro / gpt_image_1_5Static images for feed / Stories / posters
Videoluma_ray3 / runway_gen4 / kling_2_6 / kling_3_0 / veo_3_1 / seedance_proShort videos for Reels / TikTok / in-stream
Avatarheygen / kling_avatar / veedLip-synced spokesperson videos (UGC-style)
TTSelevenlabs / openai_tts / heygenVoice narration / multilingual VO
CompositingcreatomateAssemble clips + text + audio into final ad

The legacy /generate/* route only exposes a subset of these (see the marker above). All generation is async: the request returns a job_id (202 Accepted), then you poll GET /api/v1/creative-hub/generate/jobs/:id until ready.

Use in Campaign Creator

From any campaign in /campaign-creator/new: the creative block has a Browse Creative Hub button. Pick file β†’ injected into ad spec. No re-upload, no duplication.

How storage works

Wevion uses Google Drive Service Account (not user OAuth). All files are owned by the service account; visibility within Wevion is controlled by Wevion's RBAC layer (creative-hub.helpers.ts); external sharing is controlled by Drive's permissions API.

See ch-108 Drive settings + ch-109 Drive RBAC for details.

Where it lives in the app

  • Page: /creative-hub + /creative-hub/:folderId?member=:memberId
  • Sidebar: Creative Hub entry
  • In Campaign Creator: creative block β†’ Browse Creative Hub

What you'll see

Top of page:

  • Breadcrumb path (root β†’ folder β†’ subfolder)
  • Members switcher (super_admin / admin see all users; owner sees self + their team members)
  • File type filter (all / image / video / folder)
  • Grid / list view toggle
  • Upload + New folder + AI generate buttons

Main grid:

  • File / folder tiles with thumbnail + name + size + date
  • Hover: actions menu (Open, Rename, Move, Share, Delete)
  • Infinite scroll pagination

Key concepts to learn next

Best practices

One folder per campaign / creative concept

Don't dump everything in root. Folder per concept ("Spring Sale 2026", "ClientA prospecting v3") keeps the library navigable as it grows.

Name files for findability

product-shot_blue-bg_landscape_v2.png is searchable. IMG_2841.png is not. Rename before uploading or right after.

Generate variants, then pick

AI generation is cheap relative to manual creative work. Generate 3-5 variants per concept β†’ pick winners β†’ discard rest. Don't over-tune a single generation.

After generating / uploading: use the file in a campaign or a draft. Files that sit unused for weeks lose context; you forget which prompt or which client they're for.

FAQ

What is Creative Hub in Wevion?

Creative Hub, at /creative-hub, is Wevion's central asset library and AI generation studio for ad creatives. It combines three capabilities: uploading and organizing files (images, videos, documents), AI-generating new creatives, and using assets directly in Campaign Creator. Storage is backed by Google Drive, with access controlled by Wevion roles and Drive permissions.

What kinds of creatives can Wevion's AI generate?

Wevion's Creative Hub supports five AI generation types: images (Seedream, Nano Banana, Flux, GPT Image), videos (Luma, Runway, Kling, Veo, Seedance), lip-synced avatar videos (HeyGen, Kling Avatar, VEED), text-to-speech voiceover (ElevenLabs, OpenAI TTS, HeyGen), and compositing via Creatomate to assemble clips, text, and audio into a finished ad. The legacy /generate/* route exposes only a subset of providers. All generation runs asynchronously.

How do I use a Creative Hub asset in a campaign?

From any campaign in /campaign-creator/new, the creative block has a Browse Creative Hub button. Pick a file and it's injected into the ad spec β€” no re-upload and no duplication. This lets you generate or upload once in Wevion's Creative Hub and reuse the same asset across campaigns.

Where are my Creative Hub files stored?

Wevion's Creative Hub stores files using a Google Drive Service Account, not your personal OAuth, so all files are owned by the service account and survive Wevion outages. Visibility inside Wevion is controlled by its RBAC layer, while external sharing is handled through Drive's permissions API.

How should I organize creatives in Creative Hub?

Wevion recommends one folder per campaign or creative concept instead of dumping everything in root, and naming files descriptively (like product-shot_blue-bg_landscape_v2.png) so they stay searchable. Because AI generation is cheap, generate three to five variants per concept, pick the winners, and use them in a campaign right away.