Finance tool
FX Board
A crisp exchange-rate board with a running ticker, a converter whose numbers roll, and cards with 30-day sparklines.
Finance Cards Light Live data MIT-0 code No API key
About this template
FX Board loads euro reference rates for twelve currencies and the last month of history from Frankfurter, then shows them three ways: a dark ticker tape that loops across the top, a converter with a swap button, and a grid of cards where each sparkline draws itself and is colored by the 30-day change.
The style is Swiss-utility: off-white background, IBM Plex Sans and Mono, one acid lime accent used only for the highlighter and the swap icon. Tapping a card converts into that currency, so the cards double as the second currency picker.
What is on the page
- Looping ticker tape with up and down arrows
- Photo banner with highlighted headline and a live dot
- Converter with send and receive fields and a swap button
- Grid of currency cards with change badges and sparklines
Motion and effects
- Ticker scrolls seamlessly
- Converted amount rolls to the new value
- Swap button spins half a turn
- Sparklines draw in, area fills fade in
- Cards rise in a cascade and lift on hover
DESIGN.md
The whole style in one file: colors with their roles, type scale, components, layout, depth, motion and the rules on what not to do. Give it to your coding agent together with the prompt below, or keep it at the root of your project.
Read it here
# FX Board — DESIGN.md An exchange-rate board and converter. Family: Swiss utility, light. ## 1. Visual theme and atmosphere A clean trading desk printed on off-white paper. Grid, numbers, one acid highlighter. Mood: crisp, trustworthy, slightly playful in one place only. ## 2. Color palette and roles ``` --bg: #f6f6f1 /* paper */ --panel: #ffffff --line: #e3e3da --ink: #101010 --mute: #6b6b6b --up: #0a8f5a /* data: rate rose over 30 days */ --down: #d1373a /* data: rate fell */ --lime: #d7ff3a /* the one accent: headline highlighter and the swap icon */ ``` Rule: green and red only for direction of change. Lime never appears on more than two elements per screen. ## 3. Typography - Headings and labels: **IBM Plex Sans** 400–700. Headline 700, `clamp(40px, 7vw, 64px)`, tracking −0.03em. - Every number: **IBM Plex Mono** 500/600 (rates, amounts, ticker, dates). - Labels 11px uppercase mono with 0.1em tracking. ## 4. Components - **Ticker tape:** black strip, mono 13px, pair, rate and a ▲/▼ change in green or red. - **Banner:** photo with a white fade from the left; a small static square with the rates date; headline with a lime highlighter on one word. - **Converter:** two soft fields (label, big mono amount, currency select) and a round black swap button with a lime Phosphor arrows icon; the result rolls to its new value. - **Currency card:** code, name, change badge, mono rate, sparkline with a 16% area fill in the direction color. Tapping a card converts into it; the selected card gets an ink outline. ## 5. Layout Max width 1080px. Converter is three columns (field, swap, field), one column on phones with the swap rotated. Cards: auto-fill grid with 230px minimum. Radii: 24px banner, 22px converter, 20px cards, 16px fields. ## 6. Depth Mostly flat: 1px borders and one soft shadow under the converter. Cards lift slightly on hover. ## 7. Motion - Ticker loops seamlessly (content doubled, −50% translate): rates as a passing stream. - Converted amount rolls in 500 ms; the swap button turns half a turn. - Sparklines draw once; cards rise in a short cascade. - `prefers-reduced-motion`: ticker still, numbers jump, lines drawn. ## 8. Do and don't Do: mono for every number; say the date of the rates; "Not financial advice" in the footer. Don't: pulsing "live" dots, a second accent, colored backgrounds for whole cards, rounded pills for numbers. ## 9. Agent prompt guide Bias: off-white grid, Plex Sans + Plex Mono, green/red only for change, one lime highlight. Reject: dark crypto-casino look, neon gradients, glowing charts, blinking tickers on every element. ## Data and credits Frankfurter exchange rates API (blended reference rates, free to use, also commercially, as Frankfurter states). Banner photo from Pixabay, file kept with the page, author credited. Phosphor Icons MIT. Code MIT-0. Not financial advice.
Prompt to build your own
Build a single-file currency board (HTML, CSS, vanilla JS) on the Frankfurter API v2 (https://api.frankfurter.dev/v2/rates?base=eur"es=usd,gbp,... and the same with &from=DATE for 30 days of history). Top: a black ticker tape that loops seamlessly (content doubled, translateX -50%). Then a rounded photo banner with a fading white overlay, a small static square with the rates date and an 'FX Board' headline where 'Board' has a lime highlighter. Converter: two soft fields (amount + currency select) and a round black swap button that rotates 180 degrees; the result rolls to its new value. Grid of currency cards: code, name, change badge (green or red), rate in IBM Plex Mono and an SVG sparkline that draws itself; clicking a card converts into it. Fonts: IBM Plex Sans and Mono. Not financial advice.
Paste it into Claude Code, Cursor, Codex or any coding agent, then swap the data source and the words to make it yours.
Good reference for
- Fintech and crypto dashboards
- Converters and calculators
- Clean light card grids