SignalSpeak

Train clear thinking through speech.

SignalSpeak is your daily speaking reps tool.

The job is simple: help you speak more clearly, use fewer filler words, ramble less, and build calm confidence through repetition.

What this is for

Use it when you want to:

  • explain ideas more simply
  • reduce filler words like like, uh, and you know
  • get more comfortable speaking out loud every day
  • sound clearer at work and in normal conversation
  • build confidence by doing reps, not by overthinking

The feel should be:

You can do this right now.

Not:

Perform.

Current shape

The app is intentionally lightweight and centered on one loop:

pick prompt -> speak -> score rep -> review feedback -> do the next rep

The visible prompt buckets are:

  • Everyday
  • Work
  • Social

Everyday is the default bucket.

That matters because the first reps should feel easy to start, not demanding.

Prompt buckets

Everyday

Low-pressure speaking reps for clarity, comfort, and consistency. This is the starting layer.

Examples:

  • describe what you did today clearly
  • explain your morning routine simply
  • talk about a recent meal you enjoyed
  • describe a place you know well
  • explain a hobby or interest in plain English
  • tell a short story about something that happened this week
  • describe your ideal weekend
  • explain something simple you are good at
  • talk about a movie, show, or book you liked
  • describe a goal you are working on calmly and clearly

Work

One visible bucket that combines the more demanding prompt libraries already in the app:

  • clarity
  • sales
  • interview
  • meetings

This keeps the UI simpler while still giving you access to more structured reps around explanation, objection handling, behavioral answers, concise updates, and decision framing.

Social

Conversational clarity and storytelling reps. Use this for sounding more natural, easier to follow, and less stiff.

What the app tracks

Everything is local-only.

The app stores:

  • prompt bucket
  • recent rep history
  • scores and XP
  • today's rep count
  • current streak
  • best streak

There is:

  • no backend
  • no auth
  • no sync
  • no paid API dependency

Feedback model

The scoring is local and heuristic.

It looks at signals like:

  • filler words
  • hedging
  • structure cues
  • examples
  • sentence length
  • lexical variety
  • vagueness
  • jargon density
  • target-length discipline

It returns:

  • clarity
  • precision
  • structure
  • concision
  • confidence
  • overall

After a rep, the app keeps the useful feedback in the rep flow:

  • score breakdown
  • current bottleneck
  • coach notes
  • plain-English rewrite guidance
  • next-rep drill

Interaction notes

The app is meant to feel direct:

  • bucket switching should update prompts immediately
  • Random stays inside the current visible bucket
  • dictation is optional
  • typed or pasted transcripts still work normally

The point is to remove friction and make it easy to come back every day.

Run locally

Requirements:

  • Node.js 20+
  • npm 10+

Commands:

npm ci
npm run dev

Production build:

npm run build

Browser notes

The app works without dictation, but live dictation is best in recent Chrome- and Safari-based browsers.

If dictation is unavailable or blocked, you can still paste or type transcripts and run normal reps.

Stack

  • React
  • Vite
  • Framer Motion
  • Recharts
  • one app-level stylesheet
  • browser speech recognition when supported
  • localStorage persistence

Keep it simple. Keep it easy to return to. Keep the rep loop front and center.

Built With

Share this project:

Updates