Inspiration
NovaMarket was inspired by the grind of modern marketing: small teams juggling endless briefs, platform quirks, and the guesswork of what will actually perform. We wanted a system that turns raw campaign inputs into on-brand posts and videos in minutes—not days—then learns from real impressions to get better each round. With Claude on Amazon Bedrock for copy and Amazon Nova (via Bedrock) for video, NovaMarket lets teams ship creative fast, safely, and with measurable lift.
What it does
NovaMarket ingests a brand’s campaign inputs—budget, product details, and target audience—then uses Claude on Amazon Bedrock to generate on-brand post copy. Claude collaborates with NovaMarket’s video pipeline by emitting structured scene directions that drive the Amazon Nova video model and Amazon Polly text-to-speech model (via Amazon Bedrock) to produce matching short-form videos with audios. NovaMarket then auto-formats titles, descriptions, aspect ratios, and schedules for Twitter/X, Instagram, LinkedIn, and more—saving drafts for review or publishing directly. After posting, NovaMarket collects impression/engagement data and feeds it back into the Claude + Nova + Polly loop to continuously refine both text, video, and audio creatives.
How we built it
NovaMarket is a web app with OAuth-based sign-in (users connect Google/GitHub and link social accounts via each platform’s OAuth), a lightweight backend API, and a worker queue. Campaign inputs (budget, audience, product facts) are normalized into a prompt schema and sent to Claude on Amazon Bedrock to produce structured JSON for titles, captions, hashtags, calls-to-action, and platform variants. From that JSON, we synthesize a compact scene plan (shots, durations, on-screen text, VO cues, aspect ratio) and invoke Amazon Nova via Amazon Bedrock to render short-form video assets, which we pair with the approved copy. The backend auto-formats copy and media for Twitter/X, Instagram, and LinkedIn, schedules posts or saves drafts, and a worker publishes at the right time with idempotent retries. Afterward, analytics jobs pull impressions/engagement from platform APIs, log them alongside model/version and prompt hashes, and feed a distilled performance summary back into the next Bedrock prompt so text tone, hooks, and scene pacing improve each iteration.
Challenges we ran into
Getting Claude on Amazon Bedrock to emit strict, schema-valid JSON was tricky, so we tightened prompts, temperatures, and added server-side validation. Mapping that structure into scene plans for Amazon Nova introduced render latency and occasional timeouts, requiring polling and exponential backoff. Multi-provider OAuth and token refresh had to be rock-solid. Ensuring scheduled posts didn’t duplicate demanded idempotency keys and a transactional outbox.
Accomplishments that we're proud of
We shipped an end-to-end loop: campaign inputs → Claude on Bedrock for structured copy → scene plan → Amazon Nova video → platform-ready publish. Our scene-plan compiler keeps videos aligned with copy and brand. The platform-aware formatter slashes manual edits by auto-trimming, tagging, and sizing assets. We log model/version and prompt hashes so performance lifts can be traced to specific changes.
Built With
- amazon-bedrock
- amazon-nova
- amazon-polly
- amazon-web-services
- anthopic
- bedrock
- claude
Log in or sign up for Devpost to join the conversation.