Brand guidelines · v1.0

Music
without
the ebb.

An ebb is a decline, a retreat, an interruption in the tide. EBBLESS is the music that doesn't do that — one playlist, one continuous listen, no gaps to manage.

ContinuousQuiet confidenceEffortlessAnti-frictionIndependent

01 — Brand essence

What EBBLESS is, in one breath.

EBBLESS takes a Spotify playlist, finds each track on YouTube, and plays it back as one continuous queue. It's built to keep the listening going — not to fight the platforms it draws from.

The name

EBBLESS = without ebb. Not a made-up tech word — a real one, subtracted from. It names the specific thing the product removes: the interruption, the dead air, the retreat back to a search bar.

Mission

Keep the listening going. That's the whole job. Everything else — matching, caching, the mute timer — is in service of that one sentence.

Personality

Quiet, precise, a little dry, unbothered. It explains itself once, plainly, and moves on. It does not perform enthusiasm.

Positioning

Not an ad blocker. Not a Spotify alternative. A continuous player that sits on top of playlists you already have, built by one person who wanted the music to stop stopping.

Emotional promise

The music keeps going. You stop managing it.

Functional promise

Paste a playlist link. Get continuous playback, matched and queued automatically.

Naming & pronunciation

FormWhen
EBBLESSDefault. Logotype, headings, app name, buttons, UI.
EbblessOnly mid-sentence in running prose (press, blog) where all caps would shout.
ebblessLowercase only inside code/URLs (ebbless.app) — never as a brand mention.

Pronounced EB‑less — rhymes with "pebbless," stressed on the first syllable.

03 — Color

One warm accent. Restraint everywhere else.

Every color below already exists in the product. Nothing was replaced — the audit found a palette that was already doing its job: dark, quiet, one warm accent that never competes with anything.

Background
#121212 · rgb(18,18,18)
App background. The default field EBBLESS sits in.
Panel
#181818 · rgb(24,24,24)
Rows, cards, hover surface.
Panel 2
#202020 · rgb(32,32,32)
Inputs, active row, elevated surface.
Accent
#E0B26A · hsl(37,58%,65%)
Logo, active states, primary button, focus. The one brand color.
Text
#F2F2F2 · rgb(242,242,242)
Primary text on dark.
Faint
#9A9A9A · rgb(154,154,154)
Secondary text, metadata, timestamps.
Good
#2FBF71 · rgb(47,191,113)
Success status only. Never decorative.
Bad
#E0645E · rgb(224,100,94)
Error status only. Never decorative.
Light bg (marketing only)
#F7F5F2 · rgb(247,245,242)
Press/marketing contexts. The app itself stays dark.

Contrast, checked

Accent (#E0B26A) on background (#121212): 8.9:1 — passes AAA for body text.
Accent on panel‑2 (#202020): 7.7:1 — passes AAA.
Text (#F2F2F2) on background: 17.4:1.

The one rule

Never two competing accents on screen at once. If a new feature seems to need a second brand color, that's usually a sign it doesn't belong in EBBLESS.

04 — Typography

System type. On purpose.

The product already runs on the OS system font — fast, native, zero download weight. That restraint is the brand decision, not a placeholder waiting for a "real" typeface.

EBBLESS
Display / wordmark
700 · -1% tracking · caps
Music without the ebb
H1
600-700 · sentence case
Late Night Drive
H2 / playlist name
600
Paste a public Spotify playlist link and it plays straight through.
Body
400 · 1.5-1.65 line height
I Tried It
Track title
500
Mal Griot · Unnayanaa
Track artist / metadata
400
Load
Button label
600
03:41
Timestamp / numerals
tabular figures

05 — Visual language

Continuity, not wave clip‑art.

The idea is a line that doesn't break — expressed sometimes literally (the wordmark's rule, a seek bar) and mostly abstractly (dark, quiet fields; album art left alone to be the visual hero). It is not a brand made of ocean-wave graphics.

Negative space is a feature

Dark, quiet fields around small warm accents. Don't fill space to look "designed" — EBBLESS should feel like it has room to breathe between songs the way a good DJ set does.

Album art is the hero

When something is playing, the track's own artwork carries the visual interest. Brand chrome recedes — no overlays, no colored filters on top of artwork.

One motif, used once

The continuous stroke appears at most once per screen — a seek bar, a loading line, the wordmark rule. Never as a repeating background pattern.

Corners & surfaces

6-8px radius throughout, circular only for transport controls. One radius scale, no mixing. No glassmorphism beyond the player bar's existing blur.

06 — Motion

Always moving forward, never bouncing back.

EBBLESS is fundamentally about continuity, so motion should feel continuous — not flashy. Nothing overshoots, springs, or calls attention to itself.

Track crossfade — try it

I Tried It
Mal Griot · Unnayanaa

Loading line — try it

Matching track 4 / 12…

A single continuous line filling left-to-right — never a spinner, never a shimmer grid.

Timing

150-250ms for hover/active/panel-open. 400-600ms for track or view changes. ease-out for things entering, ease-in-out for things moving in place.

Never

Bounce or elastic/spring easing. Particle effects. Waveform visualizers as chrome. Staggered bounce-ins. Animated gradients. Pulsing "AI is thinking" dots.

07 — Voice & language

Say it once, plainly, and stop.

The existing README already nails the tone — "there's no way to detect or skip an ad through this API, so this is a delay heuristic, not a guarantee." Exact about limits, no spin. That's the reference for everything EBBLESS writes.

ContextGoodBad
HeadlineKeep listening.Experience the future of seamless music streaming!
ButtonLoadGet Started Now
LoadingMatching track 4 of 12…AI is finding your perfect match...
ErrorThat doesn't look like a Spotify playlist link.Oops! Something went wrong 😅
Empty stateNo tracks found.Looks like it's pretty empty in here!
Ad heuristicMuted briefly in case of a pre-roll ad.Ads blocked.

Avoid

"Seamless," "revolutionary," "next-generation," "ecosystem," exclamation points, personifying the product, technical explanations unless necessary.

Legal / product-language constraint

Never say EBBLESS "blocks," "skips," or "detects" ads — the YouTube API gives no such signal. Never claim affiliation with Spotify or YouTube. It streams; it doesn't download or convert.

08 — Tagline system

A hierarchy, not a list to rotate through.

Primary

Music without the ebb.

Secondary

Keep listening.

Product descriptor

A continuous player for your playlists.

App-store description

Play any playlist straight through — no gaps, no managing.

One-sentence explanation

EBBLESS turns a Spotify playlist into one continuous listen, matched and queued automatically.

One-paragraph explanation

EBBLESS takes a public Spotify playlist, finds each track on YouTube, and plays it back as one continuous queue — no re-searching, no re-pasting links, no dead air between songs. It's built to keep the listening going, not to fight the platforms it draws from.

09 — Applied

The system in place, not just on paper.

Splash
Splash — mark only, no wordmark needed at this size
EBBLESS
Paste a public Spotify playlist link.
open.spotify.com/playlist/…
I Tried It
Mal Griot · Unnayanaa
Now playing
Track two
Player screen — album art as hero, one accent
No tracks found.
Empty state — plain, no illustration
ebbless.app

Music without the ebb.

A continuous player for your playlists.

Landing hero
Social post

Keep listening.

No re-searching between songs. Paste a playlist, EBBLESS keeps it going.

Feature-release announcement

10 — Do / Don't

Keep it short.