Skip to content
design system

river chart

Cardumi's visual language comes from Brazil's rivers: the river at night, the sand of the river beach in the dry season, urucum (annatto), the turquoise blue of the Tapajós and nautical charts. Nothing here is an off-the-shelf standard: typeface, color, button, spacing and writing style were all designed for this product.

01 · brand

the school and the word

Cardumi logo on a dark background
Cardumi logo on a light background
Symbol

symbol

Three fish in formation, from largest to smallest, swimming up and forward: the school. Urucum in front, turquoise in the middle, sand (or ink, on a light background) behind. The eye is cut out. Vector concept generated in Higgsfield and redrawn to work at 16 px.

word

"cardumi" in Anybody 850, width 110%, lowercase. It comes from "cardume" (Portuguese) and "cardumen" (Spanish): a lot of fish together, like the community of people who fish in Brazil and Latin America.

usage

On night or sand. Never in uppercase, never outlined, never over a light photo without the dark mask. Minimum clear space: the height of the front fish.

02 · color

colors named after fishing things

noite#0E1726dark background: river at night
areia#F7F3EClight background: river beach in the dry season
tinta#121C2Btext on light
urucum#FF7A45main action: buttons
tapajós#19C3B1accent: links, highlights, selection
ouro#F5B83Dexcellent, caution
vermelho#E5484Dprohibited, danger, closed season
mar#4C9EEBwater, rain, sea
barro#C7804Fland, estuary

index ramp

poorfairgoodvery goodexcellent

From cold blue to gold, passing through turquoise and green: a scale that color-blind people can read too. Red never enters the ramp: it's only for danger and prohibition. Urucum is only for action (buttons).

03 · typography

two families, four roles

headings · Anybody (variable, width 50–150)

good fishing isn't luck

Lowercase, weight 800–900, width 118–130%, line height 0.9. Wide like a river horizon. The full slogan, "good fishing isn't luck. it's reading, preparation and skill.", sets the second sentence in the lure color at half the size.

text · Atkinson Hyperlegible Next

Designed for maximum legibility. On the boat, in harsh sun with a screen smeared with water, every letter stays unmistakable.

interface · Atkinson Hyperlegible Next

menulabelsbuttons

The menu, labels, buttons, chips and tables use the same family as the body text: clean, legible and noise-free. Labels in small uppercase with letter-spacing.

numbers · Anybody with tabular figures

78 · 1,009 hPa · 05:23

Featured number (index, result, statistic) in the heading font, with fixed-width figures so they don't "jump around" when the value changes. Every number comes with a unit.

04 · spacing

the gear scale

4--linha
8--anzol
12--chumbo
16--boia
24--molinete
32--vara
48--barco
72--rio
112--mar

From fishing line to open sea. Small components use line through float; sections use boat through sea.

05 · shapes

lure, card, ring, display

"Float" button: a full pill. The primary is urucum, with the arrow on a round float at the tip, which moves forward when the finger arrives; the secondary has a thin outline and lights up turquoise; the ghost is text only. No hard shadow: the button rises slightly and glows.

freshwaterseaestuarytechnicalcautionVUok

Ring: the swivel ring, for labels and filters.

card no. 017

card

Catalog card with the top-right corner cut off, like a lure packaging tag. Card number in the interface font, small.

78very good
display
daily index

month bar

time of yearbest: Aug–Nov
JanFebSeaAprMayJunJulAugSepOctNovDec

Prohibited: closed season always in float orange, no euphemisms.

Caution: cold front, heat, heavy rain.

06 · icons

1.75 px stroke, rounded corners

peixe
anzol
boia
vara
molinete
carretilha
isca
mapa
pin
mira
onda
lua
sol
nascer
por
vento
chuva
nuvem
pressao
termometro
mare
raio
alerta
proibido
regra
livro
regua
caderno
busca
filtro
calendario
camadas
barco
sonar
no
gota
bandeira
balanca
caixa
motor
mosca
faca
gps
colete
compartilhar
estrela
07 · writing

riverbank voice

  • Titles in lowercase, no period, short: "what to fish for today".
  • Short sentences, verbs in the imperative in the steps: "Set the drag to 25% of the line."
  • Numbers always with a unit and in local format: 1,009 hPa, 12.4 kg, 05:23.
  • Rules always come with a source: regulation, agency and link. When in doubt: "confirm with your state agency".
  • A forecast is a probability: state the confidence and what the model doesn't know.
  • Anglers' terms are welcome (rodada, batida, estofo); the glossary explains them.
  • Slogan: "good fishing isn't luck. it's reading, preparation and skill." Only in the hero, the footer, sharing and the description. Never as a section title.
  • No "amazing", "fantastic", emoji or exclamation marks.
  • Never promise fish: the index reads conditions.
  • No euphemisms for prohibition: "prohibited" means "prohibited".
  • No inline styles: every color and shape comes from the tokens in pesca.css.