marcologous/hanken-grotesk

Hanken Grotesk is a sans serif typeface inspired by the classic grotesques. Geometry, metrics, punctuations and OpenType features have been updated to support environmental signage, textfaces for books and magazines, interface design, websites and mobile applications.

Python

178

210 commits

updated Sep 2, 2026

See the code

README

Hanken Grotesk

1. Typeface Overview

Hanken Grotesk is a sans serif typeface inspired by the classic grotesques. Geometry, metrics, punctuations and OpenType features have been updated to support a wide range of projects such as environmental signage, textface for books and magazines, Interface, Websites and Mobile Applications.

The Hanken Grotesk project is led by Alfredo Marco Pradil.

To contribute, see github.com/marcologous/hanken-grotesk


2. Font Family

StyleWeightWidthOptical Sizing
Light300NormalYes
Regular400NormalYes
Medium500NormalYes
SemiBold600NormalYes
Bold700NormalYes
Black900NormalYes

Variable Font

fonts/variable/HankenGrotesk-VF.ttf

The variable font implements weight axis (wght) for granular weight control between 300–900.


3. Technical Specifications

Supported Formats

  • OpenType (OTF)fonts/otf/
  • TrueType (TTF)fonts/ttf/
  • Variable (TTF/VF)fonts/variable/
  • Web Open Font Format 2 (WOFF2)fonts/web/

Character Set

  • Latin Basic — U+0020–U+007F
  • Latin Extended-A — U+0100–U+017F
  • Latin Extended-B — U+0180–U+024F
  • Greek and Coptic — U+0370–U+03FF
  • **Greek Core
  • Cyrillic — U+0400–U+04FF (pending — see #2)
  • Currency Symbols — U+20A0–U+20CF
  • Mathematical Operators — U+2200–U+22FF

OpenType Features

FeatureTagDescription
Small CapssmcpLowercase as small capitals
Case-Sensitive FormscaseAdjusts punctuation for capitals
Tabular FigurestnumMonospaced numerals
Lining FigureslnumUppercase-height numerals
Oldstyle FiguresonumText-height numerals
FractionsfracDiagonal fractions
OrdinalsordnOrdinal forms (1st, 2nd, 3rd)
SuperscriptsupsSuperscript characters
SubscriptsubsSubscript characters
slashed-zerozeroSlashed zero variant
kernkernKerning pairs

4. Build Pipeline

Prerequisites

  • Python 3.8+
  • fontmake
  • gftools
  • fonttools

Installation

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Build Commands

# Build static fonts
cd sources
gftools builder config.yml

# Build variable font
gftools builder config.yml --variable

CI/CD

Automated builds run on every push to master. View workflow logs:

.github/workflows/build.yml

5. Project Structure

hanken-grotesk/
├── .github/
│   └── workflows/
│       └── build.yml
├── documentation/
│   └── SPECimen.md
├── fonts/
│   ├── otf/              # OpenType static
│   ├── ttf/              # TrueType static
│   ├── variable/        # Variable font
│   └── web/             # WOFF2 web fonts
├── images/
├── sources/              # Glyphs source files
├── AUTHORS.txt
├── CONTRIBUTORS.txt
├── OFL.txt
├── README.md
└── requirements.txt

6. Contributing

Contributions are welcome. Please review the contribution guidelines before submitting enhancements or bug fixes.

Reporting Issues

For technical issues (missing glyphs, rendering bugs, build failures), please open an issue.

Font Testing

Test files are available in fonts/. For web testing, use the WOFF2 files in fonts/web/.


7. License

Hanken Grotesk is distributed under the SIL Open Font License 1.1.

See OFL.txt for full license text.


8. Version History

VersionDateChanges
2.0012024-01Initial release with 6 weights, variable font support
1.x2023Development phase

Contributors

marcologous

149 commits

vv-monsalve

48 commits

felipesanches

11 commits

drinking-code

1 commits

marcologous/hanken-grotesk

Hanken Grotesk is a sans serif typeface inspired by the classic grotesques. Geometry, metrics, punctuations and OpenType features have been updated to support environmental signage, textfaces for books and magazines, interface design, websites and mobile applications.

Python

178

210 commits

updated Sep 2, 2026

See the code

README

Hanken Grotesk

1. Typeface Overview

Hanken Grotesk is a sans serif typeface inspired by the classic grotesques. Geometry, metrics, punctuations and OpenType features have been updated to support a wide range of projects such as environmental signage, textface for books and magazines, Interface, Websites and Mobile Applications.

The Hanken Grotesk project is led by Alfredo Marco Pradil.

To contribute, see github.com/marcologous/hanken-grotesk


2. Font Family

StyleWeightWidthOptical Sizing
Light300NormalYes
Regular400NormalYes
Medium500NormalYes
SemiBold600NormalYes
Bold700NormalYes
Black900NormalYes

Variable Font

fonts/variable/HankenGrotesk-VF.ttf

The variable font implements weight axis (wght) for granular weight control between 300–900.


3. Technical Specifications

Supported Formats

  • OpenType (OTF)fonts/otf/
  • TrueType (TTF)fonts/ttf/
  • Variable (TTF/VF)fonts/variable/
  • Web Open Font Format 2 (WOFF2)fonts/web/

Character Set

  • Latin Basic — U+0020–U+007F
  • Latin Extended-A — U+0100–U+017F
  • Latin Extended-B — U+0180–U+024F
  • Greek and Coptic — U+0370–U+03FF
  • **Greek Core
  • Cyrillic — U+0400–U+04FF (pending — see #2)
  • Currency Symbols — U+20A0–U+20CF
  • Mathematical Operators — U+2200–U+22FF

OpenType Features

FeatureTagDescription
Small CapssmcpLowercase as small capitals
Case-Sensitive FormscaseAdjusts punctuation for capitals
Tabular FigurestnumMonospaced numerals
Lining FigureslnumUppercase-height numerals
Oldstyle FiguresonumText-height numerals
FractionsfracDiagonal fractions
OrdinalsordnOrdinal forms (1st, 2nd, 3rd)
SuperscriptsupsSuperscript characters
SubscriptsubsSubscript characters
slashed-zerozeroSlashed zero variant
kernkernKerning pairs

4. Build Pipeline

Prerequisites

  • Python 3.8+
  • fontmake
  • gftools
  • fonttools

Installation

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Build Commands

# Build static fonts
cd sources
gftools builder config.yml

# Build variable font
gftools builder config.yml --variable

CI/CD

Automated builds run on every push to master. View workflow logs:

.github/workflows/build.yml

5. Project Structure

hanken-grotesk/
├── .github/
│   └── workflows/
│       └── build.yml
├── documentation/
│   └── SPECimen.md
├── fonts/
│   ├── otf/              # OpenType static
│   ├── ttf/              # TrueType static
│   ├── variable/        # Variable font
│   └── web/             # WOFF2 web fonts
├── images/
├── sources/              # Glyphs source files
├── AUTHORS.txt
├── CONTRIBUTORS.txt
├── OFL.txt
├── README.md
└── requirements.txt

6. Contributing

Contributions are welcome. Please review the contribution guidelines before submitting enhancements or bug fixes.

Reporting Issues

For technical issues (missing glyphs, rendering bugs, build failures), please open an issue.

Font Testing

Test files are available in fonts/. For web testing, use the WOFF2 files in fonts/web/.


7. License

Hanken Grotesk is distributed under the SIL Open Font License 1.1.

See OFL.txt for full license text.


8. Version History

VersionDateChanges
2.0012024-01Initial release with 6 weights, variable font support
1.x2023Development phase

Contributors

marcologous

149 commits

vv-monsalve

48 commits

felipesanches

11 commits

drinking-code

1 commits

Languages

Python

59.3%

Shell

40.7%