Our transcription SaaS moved from Rails to Rust in seven days, with nobody logged out
SoundScript.AI turns audio into text in 99 languages. Its Rails app ran the website, background jobs and Redis on one small server and was hitting its limits. We rewrote it in Rust, checked it page by page against the old app and switched production in a window of about four minutes.
- Client
- Envixo
- Platform
- Web app and mobile API
- Industry
- AI & SaaS
- Launched
- 2026
The challenge
The Rails 8.1 app worked, but Puma, Sidekiq, Redis and PostgreSQL shared a server with 1.9 GB of memory. Under load, pages took seconds to answer, and in July 2026 the background jobs froze for five days.
What we built
A complete rewrite of the product, not a prototype: the website in 99 languages, the transcription pipeline, AI summaries and chat, exports, billing, the mobile API and the admin console.
Same URLs and contracts
Every localized page, webhook path, mobile API endpoint and storage bucket stayed the same, so links, apps and integrations kept working.
Nobody logged out
The Rust app reads the Rails session cookie and the existing password hashes, so users stayed signed in through the switch.
Data verified, not assumed
After the final copy, row counts and checksums of accounts, transcripts, usage and subscriptions were compared between the old and new databases: identical.
A parity test harness
1,126 page requests across 11 kinds of user and four languages, 39 form submissions and 343 admin requests were replayed against both apps and compared.
The whole product
Transcription with Whisper and Azure, live status, AI summary and chat, TXT, SRT, DOCX and PDF exports, Stripe and Google Play billing, and an admin console.
A safe way back
The old server stayed intact for two weeks after the switch, so a rollback was a DNS change.
Engineering results
Measured in a load test before launch, on a shared machine: the absolute numbers are indicative, the ratios hold.
- Production switched in a window of about four minutes
- Signup, upload, live status, downloads, AI, API and admin checked in production after the switch
- The load test found a connection pool bug, fixed before launch
- 99 languages, including right-to-left PDFs
Technology
- Rust
- axum
- PostgreSQL
- Typst
- OpenAI Whisper
- Azure Speech
- Stripe
- Kubernetes
Need software built around your business?
Integrations, internal tools, apps and platforms, built to order by senior engineers directing AI agents. Tell us what you need and we will show you how we would build it.