Square Bot Sans

Square Bot Sans

A squared technical sans derived from Hubot Sans and extended with wdth, wght, and ital axes.

Design intent

Square Bot Sans is a squared technical sans derived from Hubot Sans.

It is built for interface, code-adjacent, branding, and display work that needs compact rhythm, operator shapes, and a hard grid.

Source inventory

The current Glyphs package has 12 masters, 49 active instances, 959 total glyphs, 921 exporting glyphs, and 574 encoded glyphs.

The active OpenType feature set is aalt, ccmp, locl, numr, dnom, frac, ordn, pnum, tnum, zero, c2sc, smcp, case, dlig, liga, ss01, ss02, ss03, ss04, ss05, and ss06.

Axes and specimens

The site specimens use the rebuilt SquareBotSans[ital,wdth,wght].woff2 variable font.

The Google Fonts candidate uses width stops 75 / 100 / 125 and split Roman/Italic variable fonts.

Italic development status

The Italic version of Square Bot Sans is in heavy development. Its outlines, spacing, interpolation, and exported files may change in future releases.

License and attribution

Square Bot Sans is licensed under the SIL OFL 1.1 and derived from Hubot Sans.

There are no Reserved Font Names for Square Bot Sans.

Font metadata

Source inventory and extracted runtime metadata
Default style
Regular
Source inventory
12 masters49 active instances959 total glyphs921 exporting glyphs574 encoded glyphs
Preset styles
RegularBlackBlack ItalicBoldBold ItalicCondensed BlackCondensed Black ItalicCondensed Bold+40 more
OpenType features
aaltccmploclnumrdnomfracordnpnumtnumzeroc2scsmcpcasedligligass01ss02ss03ss04ss05ss06
Scripts
DFLTgreklatn
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
0123456789
&->!

Roman

ExtraLight
200
Neon Alley Relay
Light
300
Chrome Rain Ritual
Regular
400
Backstreet Biohaze
Medium
500
Gridline Night Run
SemiBold
600
Arcade Afterhours
Bold
700
Holo-Static Hymn
ExtraBold
800
Sublevel Signal
Black
900
Ozone Vinyl Club

Italic

ExtraLight
200
Neon Alley Relay
Light
300
Chrome Rain Ritual
Regular
400
Backstreet Biohaze
Medium
500
Gridline Night Run
SemiBold
600
Arcade Afterhours
Bold
700
Holo-Static Hymn
ExtraBold
800
Sublevel Signal
Black
900
Ozone Vinyl Club

Languages

EnglishSpanishFrenchPortugueseGermanTurkishItalianPolishDutchRomanianHungarianCzechSwedishDanishFinnishCroatianSlovakNorwegian BokmålSlovenianIcelandic

OpenType features.

Square Bot Sans includes source-built layout features for interface copy, numeric systems, lowercase alternates, technical forms, and code-style operator ligatures.

FeatureOffOn
Ligatures
dligDiscretionary operator ligatures
Substitutes code-style operator strings, including arrows, comparisons, not-equal, angle pairs, and pipe arrows. Disabled by default.
<- -> => =< != >= <= <> <| |>
<- -> => =< != >= <= <> <| |>
ligaStandard ligatures
Merges common Latin letter pairs for smoother text texture. Enabled by default.
office affine flag fi fl ffi ffl
office affine flag fi fl ffi ffl
Case
c2scCaps to small caps
Turns uppercase letters into small-cap glyphs for compact labels. Disabled by default.
SQUARE BOT SANS AP CX INTERFACE
SQUARE BOT SANS AP CX INTERFACE
caseCase-sensitive forms
Raises punctuation and symbols to align better with all-cap settings. Disabled by default.
(CASE) / GRID [ALERT] - ORBIT
(CASE) / GRID [ALERT] - ORBIT
smcpSmall caps
Turns lowercase letters into small-cap glyphs for compact labels and interface text. Disabled by default.
small caps another planet ap cx
small caps another planet ap cx
Numbers
dnomDenominators
Uses denominator figures for manual fraction composition. Disabled by default.
0123456789 A1 B2 C3
0123456789 A1 B2 C3
fracFractions
Formats numerator and denominator pairs into typographic fractions. Disabled by default.
1/3 5/12 0123/456789 Approximately 6/16
1/3 5/12 0123/456789 Approximately 6/16
numrNumerators
Uses numerator figures for manual fraction composition. Disabled by default.
0123456789 A1 B2 C3
0123456789 A1 B2 C3
ordnOrdinals
Formats ordinal suffixes with dedicated ordinal forms. Disabled by default.
1a 1o 2a 2o 12a 12o
1a 1o 2a 2o 12a 12o
pnumProportional figures
Sets figures to natural widths for headlines and running text. Disabled by default.
0123456789 11 22 33 44
0123456789 11 22 33 44
tnumTabular figures
Sets figures to equal widths for columns, timers, coordinates, and interface data. Disabled by default.
0123456789 11 22 33 44
0123456789 11 22 33 44
zeroPassword/code zero alternate
Switches zeros to the distinguished code form for passwords, serials, and interface strings. Disabled by default.
O0 I1 l0 O0 1000 8080 2020
O0 I1 l0 O0 1000 8080 2020
Alternates & stylistic sets
ss01Round dots
Switches dotted letters and punctuation to rounded dot forms. Disabled by default.
inside jitter signal ij ! ? : ;
inside jitter signal ij ! ? : ;
ss02Alternate lowercase forms
Switches lowercase a, y, and related accented forms to alternate shapes. Disabled by default.
array away yard anyway ray bay
array away yard anyway ray bay
ss03Alternate Q tail
Switches uppercase Q to the alternate tail form. Disabled by default.
Q QUA QUARTZ QUEUE QUORUM
Q QUA QUARTZ QUEUE QUORUM
ss04Alternate lowercase l and fl forms
Switches lowercase l and fl ligature forms for clearer distinction in mixed-case strings. Disabled by default.
low orbital flight fl flint lilt
low orbital flight fl flint lilt
ss05Compact r forms
Switches r and accented r forms to compact shapes for tighter technical texture. Disabled by default.
rare reactor corridor error array carrier
rare reactor corridor error array carrier
ss06Technical I/J and code zero forms
Switches uppercase I/J and zero to serifless technical forms for dense labels, identifiers, and password/code strings. Disabled by default.
O0 I1 / JIG / INDEX JOLT JOIN 1000
O0 I1 / JIG / INDEX JOLT JOIN 1000

Glyphs

Weight short sentence samples

Roman

ExtraLight
200
Neon rain flickers on chrome alleyways at midnight.
Light
300
A courier threads the megacity while drones hum overhead.
Regular
400
Holograms stutter; the street market keeps selling dreams.
Medium
500
Lightcycles carve silent arcs across a cobalt grid.
SemiBold
600
Arcade shaders bloom as the system boots into night mode.
Bold
700
Replicant rumors travel faster than the data-stream.
ExtraBold
800
The skyline scrolls like code behind fogged glass.
Black
900
Subroutines whisper in synth chords under blacklight.

Italic

ExtraLight Italic
200
Neon rain flickers on chrome alleyways at midnight.
Light Italic
300
A courier threads the megacity while drones hum overhead.
Italic
400
Holograms stutter; the street market keeps selling dreams.
Medium Italic
500
Lightcycles carve silent arcs across a cobalt grid.
SemiBold Italic
600
Arcade shaders bloom as the system boots into night mode.
Bold Italic
700
Replicant rumors travel faster than the data-stream.
ExtraBold Italic
800
The skyline scrolls like code behind fogged glass.
Black Italic
900
Subroutines whisper in synth chords under blacklight.

Weight paragraph samples

Example text, Regular

Neon signage bleeds into the rain while the megacity wakes. A lone courier slips through the crowd, chasing a stolen key in a sea of mirrors. In the grid below, light trails stitch geometry across the dark as synth chords pulse. Every billboard promises upgrade and escape, but the air still tastes like ozone and old circuits. Somewhere above, the sky flickers, and the night reboots again. You blink, recalibrate, and keep walking.

Down in the maintenance arcade, the floor is sticky with spilled soda and ion dust. A jukebox loops a synth hymn while strangers trade access codes under violet light. Outside, the street is all chrome reflections and tired eyes. The elevator to the sky costs more than your rent. You stay underground and call it freedom. The bass follows you down the corridor, steady as a heartbeat.

The grid district never sleeps; it only refreshes. Light trails carve perfect angles, then decay into ghosted afterimages. A helmeted runner pauses at a payphone that shouldn’t exist and listens to the dial tone like it’s a confession. Above, adverts promise clean air and quiet rooms. Below, the fans keep coughing out heat. Somewhere, a siren tests itself and pretends it’s music.

On the moonbase night shift, the silence has weight. Oxygen credits ping across a cracked terminal while the reactor hums like distant thunder. In the rec room, a projector shows old oceans as if they were still possible. Somebody taped neon stickers to an EVA suit and called it art. Nobody laughs, but everybody looks. Outside the viewport, dust drifts slow, indifferent to your shift.

Usage

Local/GitHub full variable font

Use the rebuilt WOFF2 variable font for local or GitHub-hosted web projects. It includes ital, wdth, and wght axes.

@font-face {
  font-family: "Square Bot Sans";
  src: url("/fonts/squarebot/SquareBotSans[ital,wdth,wght].woff2") format("woff2-variations");
  font-display: swap;
  font-synthesis: none;
  font-weight: 200 900;
  font-stretch: 80% 120%;
}

body {
  font-family: "Square Bot Sans", ui-sans-serif, system-ui, sans-serif;
}

.tuned {
  font-variation-settings: "ital" 1, "wdth" 100, "wght" 650;
}

.operators {
  font-feature-settings: "dlig" 1;
}

Google Fonts candidate

Use separate Roman and Italic variable fonts for the Google Fonts candidate. Width is prepared as 75 / 100 / 125 stops, and italic is selected with font-style.

@font-face {
  font-family: "Square Bot Sans";
  src: url("/path/to/SquareBotSans[wdth,wght].woff2") format("woff2");
  font-display: swap;
  font-synthesis: none;
  font-style: normal;
  font-weight: 200 900;
  font-stretch: 75% 125%;
}

@font-face {
  font-family: "Square Bot Sans";
  src: url("/path/to/SquareBotSans-Italic[wdth,wght].woff2") format("woff2");
  font-display: swap;
  font-synthesis: none;
  font-style: italic;
  font-weight: 200 900;
  font-stretch: 75% 125%;
}

body {
  font-family: "Square Bot Sans", ui-sans-serif, system-ui, sans-serif;
}

em {
  font-style: italic;
}

Downloads

Download page specimen PDF

FAQ

Square Bot Sans is published as a free release package for desktop and web use.

The local and GitHub release includes a variable font with wdth, wght, and ital axes.

The Google Fonts candidate uses paired Roman and Italic variable fonts, matching Google Fonts behavior.

Google Fonts candidate notes can be linked here if the family is published there.

Version information

Release
Version 2.009
Updated
May 30, 2026
Distribution
Free release