Myles Franklin
All products
Web app

Swayzio

An AI-native asset management platform for producers, artists, A&Rs, and publishers. GPU models tag every track, and an agent runs your catalog but asks before it changes anything.

Role
Co-Founder · product & eng
Since
2022
Backed by
Growth Factory Ventures
Site
swayzio.com
Swayzio catalog view with AI search, track list, and inspector over an orange and blue thermal gradient
  • Next.js
  • Postgres + pgvector
  • GKE GPUs
  • AI SDK

Swayzio is an AI-native asset management platform for producers, artists, A&Rs, and publishers: a Dropbox built for music files. It handles the massive, messy metadata and rights questions that come with a real catalog, and agent-powered search and analytics make all of it usable.

The platform is home to over 100,000 songs across every global music market. We’re an official partner of Audiomack and backed by Growth Factory Ventures.

Songs on the platform
100K+
Sync Money community
90K+
Data points per track
80+
Commits in v2
947

Why it exists

Professional music lives in folders, email threads, and spreadsheets. A producer has thousands of bounces named final_v7_REAL.wav, a manager has split sheets in a Google Doc, and a label has no idea which tracks were sent to whom.

With Swayzio you drag in audio and get back a searchable catalog. Every track is analyzed for key, BPM, genre, mood, and instrumentation, separated into stems, transcribed for lyrics, and embedded so you can search by how something sounds. On top sit split sheets, shareable packs with analytics, and an AI agent that can do real work in your catalog but has to ask before it changes anything.

The current version was rebuilt from the ground up. I designed and built all of it: the product, the API, the GPU pipeline, and the design system. I also moved existing users off the legacy stack and onto the new one.

01

What happens to a track

  1. Upload

    Drag in audio. Swayzio stores the original and starts analysis in the background, so you can keep working while it runs.

  2. Analyze on GPUs

    A job fans out to three model services: tags, key, BPM, and fingerprints; stem separation and Whisper lyrics; and two kinds of audio embeddings for “sounds like” search.

  3. Organize

    Tracks land in a catalog with filters for everything the models found, plus libraries, versions, and structured split sheets that also render as PDFs.

  4. Share

    Curated packs go out as short links. Every play and click comes back as analytics by geography and device.

  5. Ask

    The agent searches, tags, builds packs, and flags missing rights metadata, using the same permissioned API as the app.

02

An agent that asks first

Letting an LLM loose on someone’s unreleased music and ownership splits is a trust problem before it’s a model problem. Every one of the 31 agent tools declares its access level, whether it reads or writes, its limits, and what it must redact. The agent never sees a raw storage URL or another user’s data.

Writes need a server-issued approval bound to the user, the tool, and a hash of the exact input. If the model tries to change one character after you click “Add to pack,” the approval no longer matches and the call is refused.

03

Sync Money

Alongside the product we run @SyncMoney, a community of 90,000+ producers, songwriters, and artists. It’s where we teach how licensing works across the music industry and bring artists sync opportunities directly, without a middleman.

Built on trust and transparency, it has landed major brand licensing deals for its members, including Coors Light, Tommy Hilfiger, and many TV and film placements. Along the way we’ve built close relationships with music supervisors and media companies across North America and Europe.

  1. 01Instagram

    Education

    Teaching how licensing works across the music industry, in public.

  2. 0290K+ members

    Direct opportunities

    Sync opportunities go to artists directly, with the middleman layer removed.

  3. 03NA + Europe

    Brand and screen placements

    Coors Light, Tommy Hilfiger, and many TV and film spots for community members.

04

Architecture

API routes
89
Agent tools
31
Test cases
984
Migrations
43
  1. WebVercel
    • Next.js
    • React
    • Clerk auth
    • Design-system linter in CI
  2. Core API89 routes, one contract
    • Zod schemas
    • OpenAPI 3.1
    • Agent tools
    • Stripe entitlements
    • Trigger.dev jobs
  3. DataA database branch per preview
    • Neon Postgres
    • pgvector (HNSW)
    • pg_trgm
    • Cloud Storage
  4. Media intelligenceGKE Autopilot
    • Orchestrator
    • Essentia tags · L4
    • RoFormer stems + Whisper · A100
    • MuQ embeddings · L4
05

Engineering details I’m proud of

  1. 01cosine 1.00000

    Moved the GPU runtime with nothing else changing

    Swapped serverless GPUs for a Kubernetes cluster by reusing the exact model packages. A 20-track parity run matched on both stacks, and rollback is one environment variable.

  2. 02spot A100

    Spot GPUs that survive interruption

    Stem separation runs on cheap preemptible A100s. When one is reclaimed mid-job, the orchestrator requeues the work; stuck jobs get retried on a schedule and expire after 24 hours.

  3. 03per-branch DB

    A real database for every branch

    Every git branch gets its own copy-on-write Postgres branch and test auth instance, so previews are full end-to-end environments, not mocks.

  4. 0443 migrations

    Migrations that can’t drift

    The migration runner checksums every applied file and refuses to run if history was edited. All 43 migrations are append-only.

  5. 053 gates

    Design rules that fail the build

    A design-doc linter, ast-grep rules, and ESLint run before every deploy, so a hard-coded color or off-system spacing never reaches production.

  6. 0654 operations

    Docs generated from the code

    One set of Zod schemas validates requests, types the client, and generates the OpenAPI spec behind the public developer docs.

06

Developer platform

Everything the app does goes through the same API, and that API is documented for outside developers. The docs stay in sync because they are generated from the same schemas the server validates with.