Influencer campaigns, from brief to report.

Mifu connects brands with creators and runs the campaign in between. I built the serverless AWS backend and the web app brands use to brief creators, review their content, and report on results.

Visit mifu.io
UK · Remote · 2022 – 2024
  1. Discover
  2. Brief
  3. Offer
  4. Review
  5. Report
Campaign overview: the live Summer Edit campaign, reach and engagement, a performance chart, and creator activity
Creator card: Maya Chen, London, 84.2K followers and 5.2% engagement
Alex, the campaign assistant, with the Summer Edit brief and a Review shortlist button

About Mifu

Mifu is an influencer marketing platform. Brands use it to find creators, brief them, approve their content, and report on the campaign. Creators use it to sign up, link their social accounts, and accept offers.

I worked on it part-time for two years, across the serverless AWS backend and the web app: creator sign-up and auth, the campaign APIs and their DynamoDB data model, the campaign builder, content review, live analytics, and billing.

  • <3hTo launch a campaign, per mifu.io
  • 1DynamoDB table, single-table design
  • 4Steps in the campaign builder
  • 2Apps: brands and creators

Creators who already fit the brief

Creators sign up through Amazon Cognito and link their Instagram and TikTok accounts, so followers and engagement arrive with the profile instead of being typed in.

Brands search that pool by platform, location, audience size, and engagement, then save matches straight onto a campaign.

A campaign in four steps

The campaign builder is a multi-step form: goal, channels, the creators you want, then a review. Every step validates on its own and saves a draft, so a brief can be finished later or by someone else on the team.

The finished brief becomes the campaign record that offers, content, and reporting hang off.

New campaignSummer EditDraft

What should this campaign do?

  • Build awarenessReach new people who fit the brand
  • Drive salesTrack codes and links to purchases
  • Launch a productCoordinate posts around a date

A colleague, not another dashboard

Alex is Mifu's campaign assistant. Ask for a campaign and it drafts the brief and a first shortlist into the same records the builder writes.

Nothing reaches a creator until the brand approves it.

Your creator shortlist: Maya Chen, Ella Brooks, Noah Ellis, and Amara Cole, selected for Summer Edit
AlexYour campaign assistant

Help me plan a summer campaign for Luma Studio.

Let's find creators who bring everyday essentials to life.

Summer Edit
Goal
Build awareness
Channels
Instagram + TikTok
Audience
UK lifestyle enthusiasts

I've shortlisted four creators to get us started.

  • Maya Chen
  • Ella Brooks
  • Noah Ellis
  • Amara Cole

Nothing is sent to creators until you approve.

Every creator, every deliverable

The campaign screen pairs the funnel with a creator table, a review panel, and the timeline. Scroll to walk through it.

Summer Edit campaign: invited, accepted, confirmed and approved counts, the creator table, a content review panel, and the campaign timeline
PipelineInvited, accepted, confirmed, approved. The funnel is counted from the same creator records the table lists.
Campaign creatorsOne row per creator and deliverable, with its stage and due date, all read from the campaign's own partition.
Content reviewDrafts open beside the table. Approve, or send changes back to the creator, without leaving the campaign.
TimelineBrief sent, creating, in review, published. Each step is a stage on the creator's record.

Approved here, updated everywhere

Brands approve drafts or send changes back from the review screen. Every stage change is published through AWS AppSync, and the dashboards subscribe to it over GraphQL, so the whole team sees it land without refreshing.

Try it: approve Maya's draft and watch the feed.

Morning ritualsMaya Chen · Instagram Reel · Draft 01Ready to review
subscription OnCreatorUpdate($campaignId: ID!) {
  onCreatorUpdate(campaignId: $campaignId) {
    creator  stage  deliverable  updatedAt
  }
}
Live · Summer EditAppSync
  • Maya Chen submitted Draft 01Instagram Reel · Ready to review
  • Ella Brooks accepted the offerTikTok video · Accepted
  • Noah Ellis had content approvedInstagram Story · Approved
  • Amara Cole opened the briefInstagram Reel · Brief sent

Results while the campaign is still running

Reach, engagement, and approvals roll up from each creator's posts into the campaign dashboard, with the audience behind them one tab away.

Audience snapshot for Maya Chen on Instagram: 72% United Kingdom, 16% United States, 12% other
Total reach
248K
Engagement rate
4.8%
Active creators
24
Content approved
18 / 24
Campaign performance

The brand app, screen by screen

Redesign concepts of the brand workspace, with demo creators and data. Select a screen to see it full size.

  • 01DiscoverSearch, filter, and save creators for a brief.

  • 02Creator profileAudience, recent content, and fit for the campaign.

  • 03AlexPlan a campaign in conversation.

  • 04OverviewThe live campaign and what needs attention next.

What it runs on

Web app

  • Next.js
  • React
  • TypeScript
  • Amplify UI
  • TanStack Query
  • React Hook Form
  • Zod
  • Recharts

API & realtime

  • AWS API Gateway
  • AWS Lambda
  • Node.js
  • GraphQL
  • AWS AppSync

Data & auth

  • Amazon DynamoDB
  • Amazon Cognito
  • Amazon S3
  • Amazon SES

Billing & delivery

  • Stripe
  • AWS Amplify
  • CloudFront
  • CloudWatch
  • GitHub Actions
Content review card: Morning rituals by Maya Chen, in review
Campaign performance card: 248K total reach in June 2026
Campaign summary card: Summer Edit, live, 248K reach and 18 of 24 approved

A new era of influencer marketing.