FIXER(7)Fixer Brand ManualFIXER(7)
00 // boot

Local tech help. Dispatched.

Post the problem. The nearest fixer with the right skills claims it. Rate each other. Done.

Read the manual ->
producton-demand tech help
citybrisbane qld
palette11 greys. 0 colours.
rev1.0 // nov 2026
tty1 // boot●
01// logo

The mark

A pixel-block wordmark: tall F, lowercase ixer, a blinking block cursor. Three glyphs sit above: a bug for the fixes, an invader for the threats, a knight for the move. A fixer is dispatched to you.

01.1 primary
primary // on ink
primary // on papercurrentColor
01.2 wordmark + app mark
wordmark only // tight spaces, footers
120 // ink
120 // paper
64
Fixer favicon
favicon
mark // F + cursor. app icon, avatar, favicon
01.3 sizes + minimum
22 px // min wordmark
44 px // min primary. nav
66 px
88 px // hero
  • The logo is drawn on a 72 x 22 unit grid. Letters use 2u pixels, glyphs use 1u pixels.
  • Full logo heights go up in multiples of 22 px so every glyph pixel lands on a whole screen pixel. The mark alone goes up in multiples of 11 px.
  • Minimums: primary 44 px (glyph pixels stay 2 px), wordmark 22 px, mark 22 px. Below that, use the 32 px favicon file.
01.4 clear space
8u clear space on every side. 1u = logo height / 22
01.5 don't
[fail]
no colour

Not phosphor green. Not amber. White on black, or black on white.

[fail]
no stretching

Scale both axes together. The pixel grid is square.

[fail]
no smoothing

No rounded corners, blur or anti-aliasing. Pixels stay hard.

[fail]
no drop shadows

The only lift is the soft glow, and only on screen.

01.6 evolution // 2016 -> 2026
2016 // v0

Fixer, the original

The word "Fixer" set in a chunky geometric face. A tall capital F, then lowercase ixer. Three silhouettes perched above ixer: a spider, a space invader and a chess knight.

The idea was right from day one: a problem, a threat, and a move to deal with it.

->
2026 // v1
chunky geometric fontpixel-block wordmark on a 2u gridtall F, lowercase ixer // keptspiderbug // fixes. we squash theminvader // threats, malware, scamsknight // the move: a fixer dispatchedblinking block cursor // ready for input
02// glyphs

Pixel icons

One icon set, drawn pixel by pixel on a 1u grid and filled with currentColor, so a glyph inverts with whatever it sits on. Click any glyph to copy its snippet.

02.1 the hero three
bug01 // left

The fix

Every job starts as a bug. Wi-Fi black spot, dead laptop, printer sulking. We squash it.

invader02 // middle

The threat

Malware, scams, the dodgy email that wants your bank login. Also our virus and scam category.

knight03 // right

The move

The knight jumps where it is needed. A fixer, dispatched to your door.

Read the logo left to right: there is a bug, it might be a threat, so we make our move.

02.2 full set
render at
  • Pixel-exact. Integer pixel sizes only: 2, 3, 4 or 6 screen pixels per glyph pixel. Never 2.5, never scaled with CSS.
  • One colour. Glyphs take the text colour. No outlines, no second tone, no rounding.
  • With words. Pair a glyph with a label the first time it appears. A glyph on its own needs an aria-label.
  • Usage. <span data-glyph="wifi" data-px="3"></span> or Fx.glyph('wifi', 3)
03// faces

State emoticons

The system has a face. Nine text emoticons tell you what Fixer is doing right now, at a glance, without a single colour.

job lifecycle // press run
[^_^]
> ready.
  • Text, not emoji. Faces are typed characters in VT323 or JetBrains Mono. Never images, never emoji.
  • One per screen, beside a plain-English line that says what is happening.
  • Errors bring the fix. [x_x] is always followed by what to do next.
  • Celebrate once. \[^o^]/ is for a closed, paid and rated job. Not for every button press.
04// colour

Monochrome

Ink, paper and nine greys. Status, focus and urgency are carried by inversion, blink and glyphs. Click a swatch to copy its hex.

No colour. Ever.

04.1 how we highlight
inversion // the highlight
Wi-Fi / NBN12
Virus / scamnew
Printer4
Data rescue2

Selected, active, new and urgent states flip to a white block with black text. Hover the rows. That is our only highlight.

glow // one per screen
ETA 14:00
glow: on

--glow: 0 0 10px rgba(255,255,255,.35). Use it on the live number, the active marker, a hovered button.

scanlines // felt, not seen
body.scan
scanlines: on

A 3 px line pitch at 2.8% white plus a soft vignette. Fixed overlay, never blocks a click.

04.2 status without colour
state
signal
looks like
done
[ ok ] prefix
payment released
waiting
[ .. ] prefix + blink
waiting on kai_
error
inverted [fail]
card declined
new / urgent
inverted block, flash
NEW JOB // 1.2 km
live
glow + pulse ring
kai.sh online
idle / off
--g4 grey, no glow
priya.exe off shift
05// type

Two faces

JetBrains Mono does everything: headings, UI, body. VT323 is the CRT face, kept for big numerals, countdowns and boot screens.

JetBrains Mono400 500 700 800
Fix400Fix500Fix700Fix800
display // 80032-66 px
-.03em // lh 1.0
Local tech help. Dispatched.
heading // 70028 px
-.02em
Kai's on it. ETA 14 min.
ui // 50016-17 px
Post the problem. The nearest fixer claims it.
body // 40014 px // lh 1.6

Fixers set their own rates. You see the hourly rate and call-out before anyone leaves the house. Payment is held until the job is closed and you have both left a rating.

VT323 // crt54-128 px
numerals, timers, boot
14:00eta countdown
00:30claim window
4.92rating
label // .lbl11 px // 500
uppercase // .16em
eta // 14 minjob // FX-24817rate // $95/hr
terminal lines // .ln13 px // lh 1.75
lowercase system voice
fixer post --cat wifi --sub paddingtonjob FX-24817 postedpinging 7 fixers within 5 kmkai.sh claimed it. 1.2 km.card declined. try another card.13:42:07 heartbeat
.ln.cmd // what you typed.ln.ok // it worked.ln.wait // in progress.ln.hi // the one line that matters.ln.err // it failed, say why.ln.d // background noise
06// components

The kit

Square-ish corners (3 px), 1 px borders, white for the one thing you should press. Everything here is live and comes from /assets/fixer.css.

buttons.btn .ghost .sm
chips.chip.on
tags + badges.tag .badge
wifinbnmeshsmart-home
verifiedon shiftnewFX-24817
star rating.starpick
tap to rate kai
inputs.field .inp
fixer card.card.hl
KN
Kai Nguyen
@kai.sh // Fortitude Valley
★★★★★ 4.92 (214 jobs)
wifinbnmesh

$95/hr + $49 call-out
phone frame.phone .screen
5G 87%
FX-24817 // matchedKai's on it.ETA 14 min. 1.2 km away.Open demo
invoice.kv .kv.tot
Labour, 1 h @ $95$95.00
Call-out$49.00
Booking fee (5%)$7.20
Total$151.20
held until the job is closed
terminal window.term .term-h .term-b
fixer-core // FX-24817● live
fixer status FX-24817claimed by kai.sh in 47spayment held until the job is closedkai.sh en route. 1.2 kmeta 14 min
toggles.toggle.on
on shift. taking jobs.
alerts: muted
On is a white fill. Off is an outline. No green.
stat tiles.stat
0rating
0jobs
0avg response
0experience
chat.bubble .me
kai.shParked out front. Blue door?
youYep, come up.
avatars.ava .lg .sm
Square, 1 px border, greyscale photo. Initials if no photo. Never circles.
07// motion

Things move like a terminal

Stepped, quick and purposeful. Motion tells you the system is working. Each demo has a replay.

typewriter
Fx.type // 34 cps, jittered
ascii spinner
|
matching fixers
Fx.spinner // | / - \ at 90 ms
radar pulse
> scanning 5 km
sweep 2.8 s linear // pulse 1.8 s, 0.8 s when hot
progress bar
[..................] 0%
uploading photos
Fx.bar // # filled, . empty
invert flash
NEW JOB // FX-24817 // 1.2 km
.flash // 0.5 s steps(1) x 4. alerts only
glitch
screen: radar
.glitch // 0.35 s steps(4). screen changes
blink cursor
.fx-cursor // 1.05 s steps(1). ready, live
count up
0fixers
0km
0min
Fx.count // 1.4 s ease-out cubic
name
timing
easing
use
rise
0.5 s
cubic-bezier(.2,.8,.2,1)
new content enters
glitch
0.35 s
steps(4)
screen change
flash
0.5 s x 4
steps(1)
new job alert
blink
1 s loop
steps(1)
cursor, live dot
pulse
1.8 s loop
ease-out
map dots, radar
  • Reduced motion respected. With prefers-reduced-motion on, everything resolves instantly. Nothing important lives only in motion.
  • Stepped, not floaty. No bounces, no springs, no parallax.
08// map

Brisbane in greyscale

The map is the main screen of both apps. It is a black-and-white street map with white markers and a dashed route. Live below: Kai heading from the Valley to Sam in Paddington.

legend●
fixer, available
fixer, claiming
fixer, off shift
customerfixer en routeroute, 3 px, dash 2 6
> loading tiles...
  • Tiles: Esri dark grey canvas (OpenStreetMap data), greyscale.
  • Markers: white squares. Idle is grey. Claiming pulses fast.
  • Route: dashed white line, 3 px, dash 2 6.
  • Never satellite. Never coloured tiles.
  • No pin-drop teardrops. No coloured pins, no heat maps.
  • Labels are inverted mono tags: FX-24817
09// voice

How Fixer talks

Like a good local tech: straight to the point, friendly, and clear about what happens next.

01

Plain English

Say what is happening. "Your fixer is 5 min away", not "Technician en route to service location".

02

Queensland direct

Friendly, no fuss, no waffle. A "no worries" now and then is fine. Not on every screen.

03

Short sentences

One idea each. Under 20 words. Numbers stay exact: 14 min, 1.2 km, $151.20.

04

System lines in lowercase

Status from the machine reads like a terminal: > job posted. pinging 7 fixers within 5 km.

05

No hype

No synergy, no revolution, no exclamation marks. Let the 14-minute ETA do the selling.

06

House style

Australian English. Spell it dispatch. Hyphens, never long dashes. Money held, then released.

09.1 say this, not that
say
don't say
> job posted. pinging 7 fixers within 5 km.
Your request has been successfully submitted to our network of providers!
Kai's on it. ETA 14 min.
Great news! A technician has accepted your service request.
Card declined. Try another card.
Oops! Something went wrong. Please try again later.
Payment held until the job is closed.
Your funds are protected by our secure transaction ecosystem.
Priya's offline until 7 am.
This provider is currently unavailable.
Local tech help. Dispatched.
Revolutionising tech support with cutting-edge synergy.
09.2 words
fixertechnician, provider
jobticket, service request
claimbid, tender
dispatchdespatch
booking feecard fee, surcharge
held, releasedlocked, frozen
09.3 lint your copy
fixer lintvoice v1