Andrei Statescu
Serial starter giving web novels a voice in the reader's browser
Engineer, teacher, and self-described starter whose career runs through Java, C#, and Ruby on Rails, four years as a teaching assistant at Politehnica University in Timisoara, a PhD started and set aside, three years of teaching kids to code in a collaboration with Nokia, and an outsourcing firm run through the peak crypto years with clients spread across the world. Along the way he wrote a fantasy novel and did a stint investing in the stock market, then reframed the whole zigzag as data: he is a starter, happiest taking projects from zero to the point where they produce results. Today he provides startups with CTO-level support and is building Naramine, a browser extension that reads self-published stories on Wattpad, Royal Road, Archive of Our Own, and Honeyfeed aloud without taking readers off the page. At Indie TM #13 he demoed the beta and let the room stress-test his launch plan.
Journeys
Events
Advice & Tips
Know whether you are a starter, and stop designing companies for a finisher
Andrei's resume looks fragmented, Java to C# to Ruby on Rails, four years teaching at the Politehnica, an abandoned PhD, an outsourcing firm, a fantasy novel, until you apply his own reframe: he is a starter, energized by taking projects from zero to first results and drained by the long steady middle. Instead of fighting that, he now designs for it, picking products that can reach a self-sustaining state quickly and planning early for automation and helpers to carry the marathon stretch. The standard startup script quietly assumes a finisher, someone who wants to run the same company for fifteen years, and a starter who signs up for that script abandons it at year two and calls himself undisciplined. Temperament is an input to company design just like market size. Figure out which kind of founder you are from the evidence of your own history, then choose the product shape, exit points, and delegation plan that fit the person who will actually be running it.
Build inside the platform instead of pulling its readers away
The existing text-to-speech tools all make the same move: extract the story from the platform and play it in their own app. That works until you notice whose lunch it eats, because web novel platforms live on ads, comments, and community, and a tool that siphons readers off the page is a traffic devourer they have every incentive to fight, in court if necessary. Naramine is an extension precisely so it can stay on the page: it reads the chapter where it is published, follows the pagination, and leaves every pageview, comment, and vote where the platform can count it. That shape is what lets Andrei position it as an accessibility layer platforms could tolerate or even endorse, rather than a parasite they must kill. When your product feeds on someone else's content, the architecture is also the legal strategy: pick the shape that adds to the host's metrics instead of draining them, and you convert a future plaintiff into a future partner.
Make the first audio chunk tiny so playback starts before the file exists
A chapter of a web novel runs around ten thousand characters, and synthesizing all of it before playing would mean a long silent spinner. Naramine instead generates a very small first chunk so the play button responds within seconds, then produces progressively larger chunks until the pipeline reaches normal flow, pre-buffering ahead of the listener and preprocessing the next chapter in the background before the current one ends. Minutes of compute still happen, but they hide behind consumption time the listener was going to spend anyway. This is the streaming insight applied to generative products: what users feel is latency to first value, not total processing time, and the two can be decoupled almost completely. Whatever your product generates, slice the work so the first slice is nearly free, ship it the moment it exists, and let the rest of the job run behind the experience instead of in front of it.
Store generated content in the user's browser, not on your servers
Every minute of audio Naramine generates is cached in IndexedDB on the listener's own machine, sometimes tens or hundreds of megabytes of it, with a clear-data control and a download option for the user. Andrei's servers never store the stories or the audio derived from them, and that decision does double duty. Economically, his storage bill is zero and stays zero as usage grows, which matters enormously for a solo founder with an 80 percent margin target. Legally, it keeps him a tool rather than a distributor: a service that hosts copies of authors' copyrighted stories, or audio derived from them, has built a library it must defend, while audio generated on demand and held only on the reader's device looks like the reader's own personal-use copy. When your product transforms content you do not own, ask where the transformed bytes live, because that answer decides both your infrastructure costs and which side of a copyright argument you are standing on.
Run the free tier on the user's hardware and sell the GPU as the upgrade
Naramine's Basic tier is the same open source engine as Premium, Kokoro, but executed as Kokoro JS in the listener's own browser, so every free user brings their own compute and Andrei's marginal cost for the entire free tier is zero. The limits of local execution, roughly 1.3x listening speed on a good laptop but stuttering below realtime on weak hardware, and English only, are exactly the pitch for Premium, which runs bigger models on Modal GPUs with two to three second cold starts, better voices, and more languages, at under a dollar per 50 chapters. The elegance is that the free tier demos the paid tier by being honest about its own ceiling: the user who feels the stutter understands precisely what the upgrade buys. If your workload can run client-side at acceptable quality, that is a free tier that cannot bankrupt you, with an upsell built out of physics instead of feature gates.
When usage comes in waves, sell a one-time gift instead of a subscription
Web novel readers binge: two weeks inside one story, a quiet month, then another binge. A monthly subscription taxes the quiet month, teaches users to cancel, and turns every resubscription into a fresh purchase decision. Andrei prices Naramine Premium as a roughly 10 dollar one-time purchase of Sparkles credits, about 20 per chapter, framed as a gift you give yourself, with costs behind it near a dollar fifty for an 80 percent margin. The one-time frame lowers the entry barrier, matches the wave shape of real usage, and eliminates dunning, churn dashboards, and the resentment of paying for silence. Subscriptions are the default because spreadsheets love them, not because users do. Look at your actual usage pattern first: if value arrives in bursts, credits that never expire align price with value, and the customer who returns after a quiet month arrives grateful instead of guilty.
Build the fair before you invite the crowd
Andrei's launch sequence inverts the usual order: first a gamified Discord, characters acting as masters of ceremonies, a Sparkles gift for joining funded by Modal's 30 dollars of monthly free credits, challenges and events on a calendar, and only then Reddit promotion, with ads as a distant maybe. The logic is that acquisition without retention infrastructure is a leaky bucket: a launch spike that lands on a product with no community evaporates, while the same spike landing in a running fair leaves behind a nucleus of evangelists who feel like early citizens. The fair also costs almost nothing, free credits, performed characters, a founder doing voices, which fits a pre-revenue budget. Before spending on reach, build the place where arrivals stay, give the first ones a gift and a role, and let the community be running, warm, and slightly theatrical before the first stranger walks in.
Mine competitor keywords, then outwrite them one article a day
Nobody types "browser extension text to speech for self-published fiction" into Google; they type "Wattpad listening" or "listen to Royal Road stories", one platform at a time. Andrei's SEO plan targets exactly those queries: run keyword research seeded from the platforms he supports, mine the keyword profiles of incumbents like Eleven Labs for proven intent, and publish a targeted article at a near-daily cadence, beginning before launch so the compounding clock starts early. The insight is that a niche tool does not need a content brand, it needs to be the answer to the precise search its buyer types on the day the need appears, and long-tail platform-plus-intent queries are both cheap to win and pre-qualified. Your established competitors have already paid to discover which keywords convert; their ranking pages are a free content plan. Read them, pick the intersection with your niche, and outpublish them where they are too big to bother.
Partner with the small platforms first and take the receipts to the big ones
Andrei wants official relationships with the web novel platforms, but Wattpad is owned by a very large East Asian corporation, and a solo founder with an unlaunched extension does not get that meeting. So the sequence starts lower: the smaller platforms, still counting users in the millions, share the same reader-retention problem, answer their own email, and can say yes without a committee. One legitimate integration there produces the assets the big conversation requires, engagement numbers, an accessibility story, authors who vouch for it, receipts instead of promises. He has already assembled the stakeholder list on LinkedIn and drafted the outreach before launch, because partnerships have lead times just like sales. Treat platform partnerships like fundraising: get quick yeses from those who can afford to give them, convert the yeses into evidence, and climb the ladder with proof in hand instead of cold-emailing the summit first.
Defer the account until the user has something to save
Naramine's beta asked for an account before the first listen, and the room unanimously voted that wall down: installing an extension is already a commitment, and demanding registration before the product has demonstrated anything doubles the drop-off at the exact moment of maximum skepticism. The replacement pattern is an anonymous ID created silently on first use, Firebase-style, which accumulates listening progress from the first play, followed by a "create an account to save your progress" prompt that appears only once there is progress worth protecting, or when money changes hands. That prompt converts because it offers the user protection for something they now own, instead of demanding tribute for something they have not yet received. Audit your own funnel for identity demands that arrive before value does, and move each one to the moment it genuinely serves the user; the database can wait longer than your drop-off rate can.
Put the upgrade button inside the moment of friction
Naramine's free tier synthesizes speech on the listener's own hardware, and on weak laptops it drops below listening speed and stutters. The room's suggestion: detect that moment, processing under roughly 95 percent of playback speed, and surface a small in-context offer, "Too slow? Boost this chapter", that hands the stalled chapter to the paid GPU pipeline. This beats any pricing page because the user is experiencing the exact problem Premium solves at the second the offer appears; no abstract feature comparison is required. Two disciplines keep it honest: the free tier must remain genuinely usable, since a deliberately hobbled Basic reads as bait and poisons trust, and the copy must sound like help, boost, speed up, finish faster, never like a penalty for owning an old laptop. Map where your product's real friction lives and put the upgrade there, phrased as a favor. A pricing page asks users to imagine the pain; an in-context upsell arrives while they feel it.
Preload one perfect sample so the product demos itself on install
Naramine's first-run flow asked a new user to locate the extension icon, navigate to a story, and wait through initial processing before hearing anything, which stacks three chances to give up in front of the moment that sells the product. The room's redesign: bundle one pre-processed sample chapter that plays instantly after installation, and guide the user to it with arrows and small animations pointing at the extension icon and the player, so the "oh, that is what this does" moment lands inside the first minute. A short gif of the same flow on the landing page extends the trick to before the install. The general rule is that onboarding has one job, reaching the demonstration of core value as fast as possible, and it is entirely legitimate to pre-cook content to get there. Users forgive a canned sample; they do not forgive a blank screen and a spinner where the magic was supposed to be.
Synchronized highlighting turns a listening tool into an accessibility tool
The most repeated UX request at Indie TM #13 was for Naramine to highlight the words as the voice reads them and autoscroll the page in sync, drawn as an overlay, a subtitle layer belonging to the extension, so the platform's own page is never modified. The overlay detail carries the strategy: rewriting a host site's DOM is the kind of intrusion platforms punish, while an overlay stays clearly on the tool's side of the line. The feature itself doubles the product's audience, because synchronized text-plus-audio serves language learners, readers with dyslexia, and anyone whose attention drifts, turning a convenience app into a legitimate accessibility story, which is exactly the positioning Naramine wants with the platforms. When your product converts content from one modality to another, keeping the two synchronized and visible is rarely optional polish; it is often the difference between a gadget and a tool people depend on.
If users can upload voices, watermark the audio from day one
Voice upload is on Naramine's long-term list, and open source projects like Chatterbox make cloning technically trivial, which is precisely the danger: the same feature that lets a reader narrate with a beloved voice lets someone clone a public figure, and an accessibility tool becomes a deepfake factory in one news cycle. The room's prescription was to build the guardrails before the feature, not after the incident: explicit disclaimers at upload, and audio watermarking baked into every generated clip so a file circulating anywhere can be traced back to the account that produced it. Traceability changes the conversation from "your tool made this" to "this account broke our terms, and here is the proof", which is the difference between a product problem and a user problem. Any generative feature with abuse potential deserves the same treatment: assume misuse on day one, watermark the output, and price the safety sprint into the launch plan rather than the crisis plan.
Sort your launch list into blockers and comfort, then ship the blockers
When Andrei laid out two more sprints before leaving beta, gamification, an unnamed button, tooltip polish, a permissions audit, the room applied a single filter to every item: will a new user hit this in their first ten minutes? A confusing permissions dialog fails that test, because it kills the install itself; a not-yet-gamified Discord and an imperfect tooltip do not, because nobody churns over them in week one. Everything that fails the test is a launch blocker; everything else is comfort work that can ship in the sprint after launch, informed by what real users actually stumble on. The audience's push to launch immediately was not recklessness but sequencing: a beta that runs long defers the only feedback that matters, strangers using the product without you in the room. Sort the list, ship the blockers, and let the comfort work compete for priority against real user complaints, a competition it usually loses.
