An AI-Native Voice-First Writing & Publishing Environment

The Product

A voice-first AI editor that turns ideas into polished, structured, publish-ready contentβ€”and lets writers listen back to their work as if an editor were reading it to them.

Today, creating a long-form article requires switching between multiple tools:

  • Voice recorder or speech-to-text for capturing ideas
  • Word processor or Markdown editor for writing
  • AI assistant for rewriting and brainstorming
  • Formatting tools for structuring content
  • Text-to-speech tools for reviewing articles
  • CMS or Git-based workflow for publishing

Each tool solves one part of the problem, but the content lifecycle itself remains fragmented.

This product brings the entire workflow into one environment:

Speak β†’ Structure β†’ Write β†’ Format β†’ Listen β†’ Refine β†’ Publish

It is not simply another AI writing assistant.

It is an AI-native content creation environment designed around how people actually think, write, review, and publish long-form content.


The Problem

Writing is fundamentally a thinking process, but most writing software assumes that thoughts arrive as perfectly formed text.

They don’t.

A writer may have an idea while walking, commuting, researching, or explaining something to someone. Speaking is often much faster and more natural than typing.

Yet conventional speech-to-text produces something like:

β€œSo basically dynamic routing in Astro is kind of a way where you can create multiple pages and I mean you don’t actually have to manually create every page…”

The writer still has to transform this raw speech into:

Dynamic Routes in Astro

Dynamic routes allow Astro to generate multiple pages from a common page template, eliminating the need to manually create every page.

That transformation is where significant cognitive effort is lost.

At the other end of the workflow, writers rarely hear their own writing before publishing.

Reading silently makes it easy to overlook:

  • awkward sentences
  • excessive repetition
  • poor transitions
  • unnatural paragraph structure
  • overly long sentences
  • unclear explanations
  • inconsistent terminology

Listening exposes these problems immediately.

So the missing product is not another place to generate text.

It is an environment that supports the entire writing feedback loop.


The Core Product Loop

The product is built around three primary modes.

1. πŸŽ™οΈ Create

Think out loud. The AI turns your thoughts into structured content.

The writer presses record and speaks naturally.

They don’t need to:

  • speak perfectly
  • remember punctuation
  • say β€œnew paragraph”
  • dictate Markdown syntax
  • formulate polished sentences

The AI understands the semantic structure of the speech.

For example:

β€œI want to explain Astro dynamic routes. First I want to explain what a dynamic route is. Then show the getStaticPaths function. And after that I want to explain how params and props work.”

The system can transform this into:

# Understanding Dynamic Routes in Astro

## What Is a Dynamic Route?

...

## Using getStaticPaths()

...

## Params and Props

...

The important distinction is:

Speech is treated as raw thinking, not as final text.

The AI’s job is to transform that thinking into an editable document.


2. ✍️ Refine

Once the initial content exists, the editor becomes an intelligent writing environment.

The AI can operate on the entire document or a selected section.

Writing assistance

  • Improve clarity
  • Fix grammar
  • Remove repetition
  • Simplify complex explanations
  • Change tone
  • Expand an explanation
  • Condense a section
  • Improve transitions
  • Generate examples
  • Generate analogies
  • Suggest titles
  • Write introductions
  • Create summaries
  • Create conclusions

But there is an important product principle:

The AI should assist the author, not replace the author.

The writer should always be able to see and control what changed.

For example:

Original

Astro has dynamic routes and they are useful because you don’t have to create every page separately.

AI suggestion

Astro’s dynamic routes allow you to generate multiple pages from a single template, eliminating the need to create each page individually.

The writer can accept, reject, regenerate, or modify the suggestion.


3. 🎧 Review

This is one of the product’s strongest differentiators.

The completed article can be played back using content-aware text-to-speech.

Instead of treating the document as one continuous string of text, the TTS engine understands the document’s semantic structure.

For example:

## Dynamic Routes

Astro allows you to generate...

[Code Block]

const posts = await getCollection("blog");

[Image]

Figure 1: Example of a dynamic route.

The listening experience could become:

Dynamic Routes

Astro allows you to generate…

Code block omitted.

Image: Example of a dynamic route.

The writer can configure how different content types are handled.

Code

  • Skip
  • Say β€œcode block omitted”
  • Read code literally
  • Summarize the code

Images

  • Read caption
  • Read alt text
  • Describe the image using AI
  • Read link text
  • Ignore URLs
  • Optionally announce external links

Tables

  • Read normally
  • Summarize
  • Skip

Citations

  • Read
  • Skip
  • Summarize

Headings

Use appropriate pauses and emphasis.

This creates something closer to an audiobook version of the article than conventional webpage TTS.


The Writing Feedback Loop

The real product advantage emerges when these capabilities are connected.

Traditional workflow

Think
 ↓
Write
 ↓
Publish

Product workflow

Speak
 ↓
AI structures thoughts
 ↓
Write
 ↓
AI assists
 ↓
Listen
 ↓
Notice problems
 ↓
Edit
 ↓
Listen again
 ↓
Publish

This creates a powerful loop:

Write β†’ Listen β†’ Notice β†’ Fix β†’ Listen again

Listening effectively becomes another form of editing.

A sentence that looks perfectly acceptable on screen can immediately sound wrong when spoken.

The product therefore turns TTS from a consumption feature into an authoring and quality-control feature.


A Semantic Editor, Not Just a Text Editor

A major product decision should be to make the editor understand content types.

Instead of treating the document as plain text, the underlying document model understands:

Document
 β”œβ”€β”€ Heading
 β”œβ”€β”€ Paragraph
 β”œβ”€β”€ Paragraph
 β”œβ”€β”€ Image
 β”œβ”€β”€ Code Block
 β”œβ”€β”€ Heading
 β”œβ”€β”€ List
 β”œβ”€β”€ Quote
 β”œβ”€β”€ Table
 └── Paragraph

This semantic representation powers everything else.

The AI knows what it is editing.

The TTS knows what it is reading.

The exporter knows how it should be formatted.

The publisher knows how it should be rendered.


Structured Content Without Losing Author Control

The editor should support rich content while maintaining a structured source representation.

For technical writers, that could mean:

Editor

β†’ structured document model

β†’ Markdown / MDX

β†’ Git

β†’ Astro

β†’ published website

The writer can therefore enjoy a modern AI writing experience without being locked into a proprietary publishing platform.

For example:

# Dynamic Routes in Astro

Astro allows you to generate dynamic pages...

## Using getStaticPaths()

```astro
---
const posts = await getCollection("blog");
---
```

Dynamic routes are particularly useful…


The AI understands that the code block is not ordinary prose.

It should not accidentally rewrite it as if it were a paragraph.

---

# AI That Understands the Whole Document

The assistant should operate at multiple levels.

### Sentence level

> Improve this sentence.

### Paragraph level

> Make this explanation clearer.

### Section level

> Explain this concept for a beginner.

### Document level

> Identify gaps in the article.

### Cross-document level

> Make terminology consistent across my entire blog.

This becomes particularly valuable for technical writers.

For example, if an author alternates between:

- "dynamic page"
- "dynamic route"
- "dynamic routing page"

the AI can identify the terminology inconsistency and suggest a canonical term.

---

# Intelligent Content Formatting

Formatting should not be an afterthought.

The system should recognize common structures automatically.

### Example

A writer says:

> "There are three advantages. First it's faster. Second it's easier to maintain. Third you can reuse the same template."

The editor could automatically produce:

### Three Advantages

1. Faster
2. Easier to maintain
3. Reusable templates

Similarly, the AI can identify:

- headings
- subheadings
- bullet lists
- numbered lists
- quotes
- code
- tables
- callouts
- images
- captions
- links
- embeds

This makes voice input dramatically more useful than conventional dictation.

---

# Multi-Modal Content Creation

The product shouldn't be limited to text.

A writer should be able to say:

> "Add an image here showing how Astro dynamic routing works."

The AI could create an image placeholder or suggest an appropriate asset.

Similarly:

> "Turn these three points into a comparison table."

> "Add a callout explaining this important concept."

> "Embed this YouTube video after this section."

The goal is for the author to think in terms of **content**, rather than formatting syntax.

---

# Publishing

The final step is to make the content portable.

A writer should not be trapped inside the editor.

The platform could support export to:

- Markdown
- MDX
- HTML
- PDF
- EPUB
- plain text
- CMS APIs

For developer-oriented publishing, an especially compelling workflow is:

```text
AI Editor
    ↓
Markdown / MDX
    ↓
Git
    ↓
Astro
    ↓
Website
    ↓
RSS

This provides the convenience of an AI editor while retaining the control and portability developers expect.


Target Users

The initial target market should not be β€œeveryone who writes.”

That would make the product too broad.

A stronger initial audience is:

1. Technical writers

Developers, engineers, and technical educators who create:

  • tutorials
  • documentation
  • programming blogs
  • technical explainers
  • newsletters
  • documentation pages

2. Knowledge creators

People who frequently convert ideas and expertise into long-form content.

3. Bloggers

Especially writers publishing regularly but who don’t enjoy traditional formatting workflows.

4. Researchers and students

People who need to turn thoughts, notes, and research into structured documents.

5. Voice-first creators

People who think more naturally by speaking than typing.


Why Technical Writers Are an Especially Strong Niche

Technical content has a unique problem:

It contains many content types that ordinary AI writing tools don’t understand well.

A technical article might contain:

Heading
Paragraph
Code
Explanation
Screenshot
Code
Table
Quote
Link
Diagram
Reference

A generic AI writer mostly sees text.

This product sees a document structure.

That enables specialized behavior.

For example:

β€œMake this section easier for beginners.”

The AI can rewrite the prose while preserving:

  • code
  • API names
  • variable names
  • commands
  • links
  • Markdown structure

That is significantly more useful than blindly rewriting the entire document.


Differentiation

The product should not compete by saying:

β€œWe have AI writing.”

Almost every modern writing product can say that.

Instead, the positioning should center around the integrated workflow.

Generic AI writer

Prompt
 ↓
Generated text

Traditional editor

Type
 ↓
Format
 ↓
Publish

Voice transcription tool

Speak
 ↓
Transcript

TTS application

Text
 ↓
Audio

This product

              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    Speak    β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚   Structure β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    Write    β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚     AI      β”‚
              β”‚   Refine    β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚   Listen    β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚    Edit     β”‚
              β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                     ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β”‚   Publish   β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The moat is therefore not one AI model.

It is the integration of multiple AI capabilities around a structured content model.


Product Architecture

At a high level:

                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚   Voice / Text    β”‚
                   β”‚       Input       β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             ↓
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚ Speech Recognitionβ”‚
                   β”‚       + AI        β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             ↓
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚ Semantic Document β”‚
                   β”‚       Model       β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             ↓
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              ↓              ↓              ↓
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β”‚   AI     β”‚   β”‚  Editor  β”‚   β”‚  TTS     β”‚
        β”‚ Assistant β”‚   β”‚          β”‚   β”‚  Engine  β”‚
        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚              β”‚              β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             ↓
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚ Export / Publish  β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The semantic document model is the critical architectural layer.

It becomes the common language between STT, AI, editor, TTS, and publishing.


The MVP

The first version should resist the temptation to build everything.

The MVP can focus on one extraordinary workflow:

β€œSpeak an article into existence.”

MVP features

1. Voice input

Speak naturally into the editor.

2. AI structuring

Convert speech into:

  • paragraphs
  • headings
  • lists
  • quotes

3. AI editing

Select text and:

  • rewrite
  • shorten
  • expand
  • clarify
  • improve

4. Semantic editor

Support:

  • headings
  • paragraphs
  • lists
  • quotes
  • code blocks
  • images
  • links

5. Content-aware TTS

Listen to the article while intelligently handling different content types.

6. Markdown/MDX export

Export the finished article without losing structure.

That alone represents a coherent and differentiated product.


Future Product Expansion

Once the core workflow works well, the platform can expand into a complete publishing environment.

Phase 1 β€” Writing

  • STT
  • AI editor
  • semantic formatting
  • content-aware TTS
  • Markdown/MDX export

Phase 2 β€” Knowledge

  • research assistant
  • web research
  • citations
  • document ingestion
  • personal knowledge base
  • semantic search
  • cross-document context

Phase 3 β€” Publishing

  • Git integration
  • Astro integration
  • CMS integrations
  • RSS generation
  • SEO assistance
  • metadata generation
  • social previews

Phase 4 β€” Multimedia

  • AI-generated diagrams
  • image generation
  • screenshots
  • video embeds
  • podcasts
  • automatic article narration

A single article could eventually generate:

Article
 β”œβ”€β”€ Markdown
 β”œβ”€β”€ Web page
 β”œβ”€β”€ Audio version
 β”œβ”€β”€ Podcast episode
 β”œβ”€β”€ Newsletter
 β”œβ”€β”€ Social posts
 └── RSS entry

The article becomes the source of truth, and AI transforms it into different publishing formats.


The Long-Term Vision

The ultimate product is not an AI word processor.

It is a content operating system.

The writer provides knowledge and ideas.

The platform handles the mechanical transformation of those ideas into different forms.

                   KNOWLEDGE
                       β”‚
                       ↓
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚ AI Editor β”‚
                 β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
                       β”‚
             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”
             ↓         ↓         ↓
           TEXT       AUDIO    VISUAL
             β”‚         β”‚         β”‚
             ↓         ↓         ↓
          ARTICLE   PODCAST   DIAGRAM
             β”‚
             ↓
          WEBSITE
             β”‚
      β”Œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”
      ↓      ↓      ↓
    RSS   EMAIL   SOCIAL

The writer doesn’t need to think about every individual output.

They create the canonical piece of content once.

AI handles the transformations.


Positioning

The strongest positioning would be:

The AI-native writing studio for people who think, write, and publish.

Or more specifically for the initial technical-writing market:

Speak your ideas. Shape them with AI. Listen to your writing. Publish anywhere.

The product is fundamentally about reducing the distance between having an idea and publishing a polished piece of content.

Today that process involves typing, formatting, editing, proofreading, listening, exporting, and publishing across several disconnected applications.

This product turns it into one continuous workflow:

Think β†’ Speak β†’ Structure β†’ Refine β†’ Listen β†’ Publish

That is the productβ€”not AI, STT, or TTS individually, but a unified AI-native environment for the complete lifecycle of long-form content.


It is essentially a combination of a rich-text editor + AI layer + STT + content-aware TTS + document model + publishing/export system.

                         USER
                          β”‚
             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
             β”‚                         β”‚
          πŸŽ™οΈ Voice                  ⌨️ Text
             β”‚                         β”‚
             ↓                         ↓
        STT Pipeline              Editor
             β”‚                         β”‚
             β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                          ↓
                 Semantic Document
                       Model
                          β”‚
             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
             ↓            ↓            ↓
        AI Assistant    Formatter     TTS
             β”‚            β”‚            β”‚
             β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                          ↓
                  Content Pipeline
                          β”‚
             β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
             ↓            ↓            ↓
          Markdown       HTML       Audio
             β”‚
             ↓
       Publish / Export

Astro + React

Astro can handle the surrounding application/site, while React can power the interactive editor.

Astro
 β”œβ”€β”€ Landing page
 β”œβ”€β”€ Documentation
 β”œβ”€β”€ Pricing
 └── App
      └── React
           β”œβ”€β”€ Editor
           β”œβ”€β”€ AI toolbar
           β”œβ”€β”€ Voice controls
           β”œβ”€β”€ TTS player
           └── Document navigator

Technologies

HTML
CSS
TypeScript
React
Astro
Tailwind CSS or custom CSS
Vite

Rich Text / Document Editor

This is one of the most important decisions.

You don’t want to build a sophisticated editor from scratch.

I would investigate:

Tiptap

Built on ProseMirror and very suitable for this product.

It gives you:

Rich text
Headings
Paragraphs
Lists
Tables
Links
Images
Code blocks
Custom nodes
Extensions
Collaboration support
JSON document representation

The important part is the structured JSON document model.

For example:

{
  "type": "doc",
  "content": [
    {
      "type": "heading",
      "attrs": {
        "level": 1
      },
      "content": [
        {
          "type": "text",
          "text": "Dynamic Routes in Astro"
        }
      ]
    },
    {
      "type": "paragraph",
      "content": [
        {
          "type": "text",
          "text": "Astro allows..."
        }
      ]
    }
  ]
}

This is extremely valuable because your AI and TTS systems can operate on semantic blocks rather than raw HTML.

Other options worth evaluating:

  • Lexical
  • ProseMirror
  • Slate
  • BlockNote

The Semantic Document Model

This is arguably the most important technology layer in the entire product.

Don’t make Markdown the internal representation.

Instead:

                    Document
                       β”‚
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        ↓              ↓              ↓
     Heading       Paragraph       CodeBlock
        β”‚              β”‚              β”‚
        ↓              ↓              ↓
      Text           Text           Code

Your internal document could contain nodes such as:

Document
β”œβ”€β”€ Heading
β”œβ”€β”€ Paragraph
β”œβ”€β”€ Paragraph
β”œβ”€β”€ Image
β”œβ”€β”€ CodeBlock
β”œβ”€β”€ List
β”œβ”€β”€ Quote
β”œβ”€β”€ Table
β”œβ”€β”€ Callout
β”œβ”€β”€ Embed
└── Divider

Then you build converters:

Semantic Document
       β”‚
       β”œβ”€β”€β†’ HTML
       β”œβ”€β”€β†’ Markdown
       β”œβ”€β”€β†’ MDX
       β”œβ”€β”€β†’ Plain Text
       └──→ TTS representation

This architecture is much more powerful than storing HTML and asking AI to manipulate HTML.

Speech-to-Text

You need an STT engine capable of handling natural speech, not merely dictation.

There are two broad approaches.

Cloud STT

Examples:

OpenAI speech-to-text
Google Cloud Speech-to-Text
Azure Speech
Deepgram
AssemblyAI

Advantages:

Excellent accuracy
Easy scaling
Streaming support
Less infrastructure
Self-hosted STT

The major technology to investigate is:

Whisper

You can run Whisper locally or on your own infrastructure.

There are optimized implementations such as:

faster-whisper whisper.cpp

For your product, I would initially use a cloud STT API, then consider self-hosting if economics or privacy make it worthwhile.

Real-Time Voice Pipeline

The experience shouldn’t be:

Record 5 minutes
      ↓
Upload
      ↓
Wait
      ↓
Transcript

You want:

Microphone
    ↓
Audio stream
    ↓
STT
    ↓
Partial transcript
    ↓
AI processing
    ↓
Structured content

Technologies involved:

Web Audio API
MediaRecorder API
WebSockets
WebRTC where appropriate
Streaming STT API
Audio chunking
Voice activity detection

Potential supporting technologies:

WebSocket
Server-Sent Events
Redis for transient state

AI / LLM Layer

This is the brain of the application.

You need an LLM for:

Speech cleanup

Raw speech
    ↓
Remove filler words
    ↓
Fix grammar
    ↓
Preserve meaning

Structuring

Raw thoughts
    ↓
Heading
Paragraph
List
Quote

Editing

Selected text
    ↓
Rewrite
Expand
Shorten
Clarify

Document intelligence

Entire article
    ↓
Find inconsistencies
Find missing sections
Suggest improvements

Generation

  • Titles
  • Outlines
  • Introductions
  • Conclusions
  • Summaries
  • FAQs
  • Metadata

You could support multiple models rather than locking the product to one provider.

For example:

          AI Gateway
              β”‚
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   ↓          ↓          ↓
OpenAI      Anthropic   Gemini
   β”‚
   ↓

Local Models

An abstraction layer makes this much easier.

Structured AI Output

This is critical.

You don’t want an LLM returning:

Here's your article...

and then trying to parse it.

You want structured output.

For example:

{
  "operations": [
    {
      "type": "insert",
      "node": {
        "type": "heading",
        "level": 2,
        "text": "What Are Dynamic Routes?"
      }
    },
    {
      "type": "insert",
      "node": {
        "type": "paragraph",
        "text": "..."
      }
    }
  ]
}

Technologies that can help:

  • JSON Schema
  • Structured Outputs
  • Zod
  • TypeScript types
  • Function/tool calling

This lets the AI manipulate the document safely.

AI Editing Architecture

You should avoid sending the entire document to the LLM for every tiny operation.

Instead:

User selects paragraph
          ↓
Editor sends selected node
          ↓
AI
          ↓
Suggested replacement
          ↓
Diff
          ↓
User accepts/rejects

For document-level operations:

Document
   ↓
Relevant sections
   ↓
Context builder
   ↓
LLM
   ↓
Structured suggestions

This reduces:

  • latency
  • token usage
  • cost
  • accidental modifications

TTS

This is the other major technology pillar.

You need a high-quality neural TTS engine.

Potential providers include:

  • OpenAI
  • ElevenLabs
  • Google Cloud Text-to-Speech
  • Azure Speech
  • Amazon Polly

You could eventually support multiple voices/providers.

The important part, however, isn’t simply the TTS API.

It’s your content-aware TTS pipeline.

Content-Aware TTS Engine

This is where your product can differentiate itself.

Don’t send the document directly to TTS.

Instead:

Semantic Document
       ↓
TTS Processor
       ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Heading                       β”‚
β”‚ Paragraph                     β”‚
β”‚ CodeBlock β†’ skip              β”‚
β”‚ Image β†’ read caption          β”‚
β”‚ Table β†’ summarize             β”‚
β”‚ Quote β†’ change intonation     β”‚
β”‚ Link β†’ read text              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
       ↓
TTS-ready script
       ↓
TTS engine
       ↓
Audio

For example:

{
  "type": "code",
  "ttsBehavior": "skip"
}

or:

{
  "type": "image",
  "ttsBehavior": "caption"
}

This makes the TTS system content-aware rather than text-aware.

Audio Player

You’ll need a sophisticated audio player rather than a basic <audio> element.

Features could include:

  • Play/pause
  • Speed control
  • Skip paragraph
  • Previous/next section
  • Current paragraph highlighting
  • Seek
  • Resume position
  • Voice selection
  • TTS mode

Ideally:

Article
─────────────────────────
## Dynamic Routes


Astro allows you to generate...
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        currently speaking

The editor highlights the content currently being spoken.

That would be an excellent UX feature.

Markdown / MDX

Since you are interested in technical blogging, this is particularly important.

You’ll need conversion between:

Semantic Document
        ↕
Markdown
        ↕
MDX

Potential technologies:

  • unified
  • remark
  • rehype
  • mdast
  • hast
  • remark-mdx
  • micromark

For example:

Tiptap JSON
     ↓
Markdown AST
     ↓
Markdown

And the reverse:

Markdown
     ↓
Markdown AST
     ↓
Semantic Document
     ↓
Editor

This is an area where the unified ecosystem is particularly useful.

Backend

You need a backend for:

  • Authentication
  • Documents
  • AI requests
  • STT
  • TTS
  • File management
  • Publishing
  • Billing
  • Usage tracking
  • User settings

A strong stack could be:

TypeScript
Frontend
   ↓
TypeScript
   ↓
Backend API

Possible backend frameworks:

  • Node.js
  • Fastify
  • NestJS
  • Hono

Given your existing experience with FastAPI, another excellent choice is:

React/Astro
      ↓
FastAPI
      ↓
AI services

Python becomes particularly attractive if you eventually bring more AI processing in-house.

Database

You need persistent storage for:

  • Users
  • Documents
  • Versions
  • AI generations
  • Projects
  • Settings
  • Usage
  • Billing

I’d strongly consider:

PostgreSQL

And potentially:

pgvector

for semantic search later.

A conceptual schema:

users
  β”‚
  β”œβ”€β”€ projects
  β”‚      β”‚
  β”‚      └── documents
  β”‚             β”‚
  β”‚             β”œβ”€β”€ versions
  β”‚             β”œβ”€β”€ blocks
  β”‚             └── metadata
  β”‚
  β”œβ”€β”€ subscriptions
  └── usage

Authentication

You need:

  • Google login
  • Email/password
  • OAuth
  • Session management
  • Account recovery

Potential services:

  • Auth.js
  • Clerk
  • Supabase Auth
  • Firebase Auth
  • Auth0

For an MVP, I would avoid building authentication yourself.

File / Asset Storage

Users will eventually upload:

  • Images
  • Screenshots
  • PDFs
  • Audio
  • Documents
  • Videos

You need object storage.

Good options:

  • Cloudflare R2
  • Amazon S3
  • Google Cloud Storage
  • Supabase Storage

Given your existing Cloudflare experience, R2 would be a particularly natural option.

Eventually users will have hundreds or thousands of documents.

You need:

Search
   ↓
Keyword search
+
Semantic search

Start with PostgreSQL full-text search.

Later:

Document
 ↓
Embedding
 ↓
pgvector
 ↓
Semantic search

Potential alternatives:

  • Qdrant
  • OpenSearch
  • Weaviate
  • Pinecone

Since you have already explored PostgreSQL + pgvector and Qdrant, either could fit the future architecture.

RAG / Knowledge Base

Eventually users could say:

β€œWrite an introduction using ideas from my previous articles.”

The system needs:

User query
    ↓
Embedding
    ↓
Vector search
    ↓
Relevant documents
    ↓
LLM
    ↓
Response

Technologies:

  • Embeddings
  • pgvector/Qdrant
  • Chunking
  • Retrieval
  • Reranking
  • Metadata filtering
  • LLM

This turns the application into a personal writing knowledge base.

Version History

Because AI is modifying content, versioning becomes extremely important.

You want:

Article
 β”‚
 β”œβ”€β”€ Version 1
 β”œβ”€β”€ Version 2
 β”œβ”€β”€ Version 3
 └── Current

Users should be able to:

  • Undo AI changes
  • Compare versions
  • Restore previous versions
  • See AI-generated changes
  • Accept/reject suggestions

For a technical writer, you could eventually provide:

Git-like document history

Collaboration

Not required for MVP, but eventually useful.

Technologies:

  • WebSockets
  • Yjs
  • CRDTs
  • Liveblocks

For example:

Writer
   β”‚
   β”œβ”€β”€ Editor
   β”‚
Editor
   β”‚
   β”œβ”€β”€ Collaborator
   β”‚
   └── AI

Tiptap + Yjs is a strong combination for collaborative editing.

Publishing

The platform could eventually publish directly to:

  • WordPress
  • Ghost
  • Medium
  • Dev.to
  • Substack
  • Custom APIs
  • GitHub
  • GitLab

For your developer-oriented use case:

Editor
 ↓
MDX
 ↓
GitHub
 ↓
Astro
 ↓
Cloudflare / Netlify

You could even build a one-click:

Publish to Astro

feature.

RSS

Since you were recently exploring RSS, this fits naturally into the publishing layer.

Once an article is published:

Article
 ↓
Metadata
 ↓
RSS generator
 ↓
feed.xml

The system could automatically generate:

  • RSS
  • Atom
  • sitemap.xml
  • OpenGraph metadata
  • canonical URLs
  • JSON-LD

SEO

AI could automatically analyze:

  • Title
  • Meta description
  • H1
  • H2 structure
  • Internal links
  • External links
  • Keyword coverage
  • Search intent
  • Readability

But the important distinction is that SEO should be an assistant, not an automatic content-spinning mechanism.

AI Research

A later version could allow:

"Research this topic and add sources."

Pipeline:

User request
     ↓
Web search
     ↓
Source extraction
     ↓
Source verification
     ↓
Relevant information
     ↓
LLM
     ↓
Draft
     ↓
Citations

This introduces another important subsystem:

Web search / browsing

Potential technologies:

  • Search APIs
  • Browser automation
  • Web crawlers
  • URL extraction
  • Citation management

Payments

If commercial:

  • Stripe
  • Razorpay
  • Paddle

You’ll need:

Free
 ↓
Usage limits
 ↓
Pro
 ↓
Higher STT/TTS/LLM limits

AI products should particularly track usage-based costs.

AI Usage & Cost Tracking

This is extremely important.

Every request should potentially record:

  • user
  • model
  • input tokens
  • output tokens
  • STT seconds
  • TTS characters
  • timestamp
  • cost

Then you can calculate:

User revenue
      -
AI infrastructure cost
      =
Gross margin

Without this, an AI SaaS product can become economically dangerous very quickly.

Background Jobs

Some operations will take time:

  • Audio transcription
  • TTS generation
  • Document processing
  • Embedding
  • Export
  • Publishing
  • AI research

You don’t want the API request sitting there waiting.

Use a job system:

API
 ↓
Queue
 ↓
Worker
 ↓
AI service
 ↓
Database

Potential technologies:

  • Redis
  • BullMQ
  • Celery
  • Temporal
  • Cloudflare Queues

For a TypeScript stack, BullMQ + Redis is a straightforward option.

Caching

AI requests can be expensive.

Cache things such as:

  • TTS output
  • embeddings
  • document summaries
  • AI metadata
  • repeated requests
  • Potential technologies:
  • Redis
  • Cloudflare KV
  • Application-level caching

Observability

You will need to know:

  • Why did the AI response take 12 seconds?
  • Why did STT fail?
  • Why did TTS cost $0.30?
  • Why did this request return malformed JSON?

Technologies:

  • OpenTelemetry
  • Sentry
  • Prometheus
  • Grafana
  • structured logging

For an MVP:

Sentry + structured application logs is sufficient.

Security

This product will contain users’ intellectual property.

Security is therefore important.

You need:

  • Authentication
  • Authorization
  • Encryption in transit
  • Encryption at rest
  • API key protection
  • Rate limiting
  • CSRF protection
  • XSS protection
  • Input validation
  • File validation
  • Secure AI tool execution
  • Tenant isolation

Never send provider API keys to the browser.

Architecture:

Browser
   ↓
Your Backend
   ↓
AI Provider

not:

Browser
   ↓
OpenAI API directly

Deployment

A reasonable architecture could be:

                  Cloudflare
                     β”‚
            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”
            ↓                 ↓
         Frontend            CDN
            β”‚
            ↓
         Backend
            β”‚
     β”Œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”
     ↓      ↓        ↓
    DB    Redis     R2
     β”‚
     ↓
 AI Providers

Potential infrastructure:

Frontend

  • Cloudflare Pages
  • Vercel
  • Netlify Backend
  • Cloudflare Workers
  • Fly.io
  • Railway
  • Render
  • AWS
  • Google Cloud Database
  • Supabase
  • Neon
  • AWS RDS
  • Cloudflare D1 for simpler workloads Storage
  • Cloudflare R2

Developer Tooling

Your development environment would likely include:

  • VS Code
  • Git
  • GitHub
  • Node.js
  • TypeScript
  • Python
  • Docker

And:

  • ESLint
  • Prettier
  • Vitest
  • Playwright
  • Husky
  • GitHub Actions

For a serious product:

GitHub
 ↓
GitHub Actions
 ↓
Tests
 ↓
Build
 ↓
Deploy

Testing

You’ll need several types of testing.

Unit testing

Test:

  • Document transformations
  • Markdown conversion
  • TTS processing
  • AI response parsing

Tools:

  • Vitest
  • pytest
  • Integration testing

Test:

Editor β†’ API β†’ AI β†’ Database

End-to-end testing

Test:

Login
 ↓
Create document
 ↓
Speak
 ↓
AI structures content
 ↓
Edit
 ↓
Listen
 ↓
Export

Tool:

Playwright

Considering the product you’re describing and the technologies you’ve already been learning, I would not build it with every possible technology.

I’d start with:

Layer	            Recommended
Frontend	        Astro + React
Language	        TypeScript
Styling	            Tailwind CSS
Editor	            Tiptap
Document model	    Tiptap JSON / ProseMirror
Backend	           FastAPI
AI	OpenAI / Anthropic / Gemini abstraction
STT	Cloud STT initially
TTS	Cloud neural TTS initially
Database	PostgreSQL
Vector DB	pgvector
Storage	Cloudflare R2
Auth	Google OAuth + Auth.js/Supabase Auth
Cache	Redis
Jobs	BullMQ or Celery
Markdown	unified / remark / rehype
Hosting	Cloudflare + suitable compute
CI/CD	GitHub Actions
Testing	Vitest + Playwright
Monitoring	Sentry
Containers	Docker

What You Actually Need to Learn

You do not need to master all of these technologies before starting.

The learning path can be much smaller.

Stage 1 β€” Core Web Application

Learn:

HTML
CSS
JavaScript
TypeScript
React
Astro

Stage 2 β€” Editor

Learn:

Tiptap
ProseMirror concepts
JSON document models
Markdown
MDX

Stage 3 β€” Backend

Learn:

Python
FastAPI
REST APIs
PostgreSQL
Authentication
File storage

Stage 4 β€” AI

Learn:

LLM APIs
Prompt engineering
Structured outputs
Tool calling
Tokens
Embeddings
RAG

Stage 5 β€” Voice

Learn:

Web Audio API
MediaRecorder
Streaming
STT
TTS
Audio processing

Stage 6 β€” Production

Learn:

Docker
Linux
Git
CI/CD
Redis
Queues
Cloudflare
Monitoring
Security

36. The Most Important Technologies

If you strip away everything optional, the core technical stack for the first real prototype is surprisingly small:

            PRODUCT MVP


          Astro + React
                β”‚
                ↓
             Tiptap
                β”‚
                ↓
      Semantic Document Model
                β”‚
      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”
      ↓         ↓         ↓
     LLM       STT       TTS
      β”‚         β”‚         β”‚
      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                ↓
            FastAPI
                β”‚
         β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”
         ↓             ↓
    PostgreSQL       R2

You don’t need Kubernetes, microservices, vector databases, complex RAG, or a huge AI infrastructure on day one.

Build the core experience first:

Speak β†’ AI structures it β†’ edit β†’ listen β†’ export Markdown

If that workflow feels dramatically better than using separate tools, then the surrounding platformβ€”research, RAG, publishing, collaboration, analytics, billing, and integrationsβ€”becomes worth building.