Fira Code

The Mozilla Foundation, Telefonica S.A., Nikita Prokopov · 2014 · OFL-1.1 · Variable

Fira Code is Nikita Prokopov's extension of Mozilla's Fira Mono, and the addition is a set of programming ligatures: character pairs a compiler reads separately but the font draws as one shape, so an arrow typed as two keystrokes looks like an arrow. Nothing about the file you save changes — the code stays plain ASCII and the joined shape is only what you see. It inherits Fira Mono's humanist proportions, which is why it stays readable in a dense editor at 13px where a stricter geometric mono would not.

Variable · 138 KB · 1 file

All weights in one file, for Figma, Illustrator, InDesign and the web.

Static · 481 KB · 5 files

One file per weight, works everywhere including older Word and Photoshop.

The license file is inside both zips.

Alphabets

Click the text above to set it in your own words.

Weight — 400

Specification

Designer
The Mozilla Foundation, Telefonica S.A., Nikita Prokopov
Foundry
Released
2014
Category
Monospace
License
OFL-1.1
Commercial use
Allowed
Good for
Code editors, Terminals, Technical documentation, Code snippets
Weights
300, 400, 500, 600, 700
Styles
Normal
Variable
Yes
Glyphs
1,857
Languages
Latin, Latin Extended, Turkish, Cyrillic, Cyrillic Extended, Greek, Greek Extended
Download size
138 KB

Size ladder

96

Sphinx of black quartz, judge my vow

64

Sphinx of black quartz, judge my vow

40

Sphinx of black quartz, judge my vow

24

Sphinx of black quartz, judge my vow

16

Sphinx of black quartz, judge my vow

12

Sphinx of black quartz, judge my vow

Characters

Uppercase

  • A
  • B
  • C
  • D
  • E
  • F
  • G
  • H
  • I
  • J
  • K
  • L
  • M
  • N
  • O
  • P
  • Q
  • R
  • S
  • T
  • U
  • V
  • W
  • X
  • Y
  • Z

Lowercase

  • a
  • b
  • c
  • d
  • e
  • f
  • g
  • h
  • i
  • j
  • k
  • l
  • m
  • n
  • o
  • p
  • q
  • r
  • s
  • t
  • u
  • v
  • w
  • x
  • y
  • z

Numerals

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

Punctuation & symbols

  • .
  • ,
  • :
  • ;
  • !
  • ?
  • '
  • "
  • (
  • )
  • [
  • ]
  • {
  • }
  • /
  • \
  • |
  • -
  • _
  • @
  • #
  • $
  • %
  • &
  • *
  • +
  • =
  • <
  • >
  • ~
  • ^
  • `
  • £
  • ¥
  • ©
  • ®
  • °
  • §

Use it on the web

You serve the file yourself. Nothing depends on this site staying up, and you get the whole character set — all Latin, Latin Extended, Turkish, Cyrillic, Cyrillic Extended, Greek, Greek Extended.

@font-face {
  font-family: 'Fira Code';
  /* The download contains .ttf files. Put yours wherever you serve static
     files from and point this at it. Converting to .woff2 first cuts the
     size by roughly 60% and every current browser supports it. */
  src: url('/fonts/fira-code.woff2') format('woff2');
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Fira Code', monospace;
}

License

OFL-1.1

You may use, modify and redistribute this font, including in commercial work. You may not sell the font file on its own, and any modified version must be released under the same license and under a different name.

Commercial use allowed

Designed by The Mozilla Foundation, Telefonica S.A., Nikita Prokopov

Copyright 2014-2020 The Fira Code Project Authors (https://github.com/tonsky/FiraCode)

Read the full license text · What these licenses mean

The license file is included inside the download.

Questions

Is Fira Code free for commercial use?
Yes. Fira Code is released under the SIL Open Font License 1.1, which allows commercial use with no fee and no attribution requirement. You can use it in client work, in products you sell, on the web and in print. The one thing you may not do is sell the font file on its own. The licence is inside the download.
Can I use Fira Code in a logo?
Yes. The licence covers the font software, not the artwork you make with it, so a logo set in Fira Code belongs to you — including if you later register it as a trademark. You do not need permission and you do not owe anything to The Mozilla Foundation, Telefonica S.A., Nikita Prokopov. What the licence stops you doing is redistributing the font file itself as a product.
How do I install Fira Code?
Download the zip and unzip it. On a Mac, select the 1 font file inside and open them, then press Install Font. On Windows, select them, right-click and choose Install. Restart any application that was already open before it will show up. Fira Code is a variable font: the single file carries all 5 weights at once. Some older software — Word, Canva, and Photoshop before 2018 — only reads the first weight and will show it as Regular. If that happens, use the Static download on this page instead: it has 5 ordinary files, one per weight, and works everywhere.
Does Fira Code support Turkish?
Yes. Fira Code includes the characters Turkish needs that plain Latin does not — the dotless ı, the dotted İ, and ğ, ş, ü, ö and ç in both cases. This was checked against the font file itself, not assumed from the fact that it covers Latin.
Does Fira Code support Latin, Latin Extended, Turkish, Cyrillic, Cyrillic Extended, Greek and Greek Extended?
Yes. Fira Code covers Latin, Latin Extended, Turkish, Cyrillic, Cyrillic Extended, Greek and Greek Extended, across 1,857 glyphs. Anything outside those alphabets is not included — the character map further up this page shows exactly what you get.
What are programming ligatures, and do I have to switch them on?
A ligature is one glyph standing in for several characters. Fira Code adds a set of them for the combinations that appear constantly in code: the two keystrokes of an arrow are drawn as a single arrow, the not-equals pair becomes one crossed-out equals sign, three dots become an evenly spaced ellipsis. Nothing about your file changes — what is saved to disk is exactly what you typed, and a compiler, or another person opening the file, sees ordinary ASCII. In editors that support ligatures at all they are usually on by default, and they are the reason almost everybody downloads this font. You can watch it happen on this page: type an exclamation mark followed by an equals sign into the specimen box above and the two characters join into a single crossed-out equals as you type.
Why are the ligatures not showing up in my editor?
Because the editor is not asking for them. Ligatures are an OpenType feature and an application has to switch it on for the text it draws. VS Code needs editor.fontLigatures set to true in its settings; JetBrains editors have an "Enable font ligatures" checkbox under Font; iTerm2, Kitty, WezTerm and Alacritty each have their own setting, and some terminals do not support them at all. Notepad, most plain text boxes and many older terminals will never show them. The font is not broken when this happens — you simply get an ordinary monospace without the joined shapes.

Similar fonts