Programming Fonts — A List
2018’s highest quality fonts for coding — free and paid.
Fonts play an interesting role in programming. I mean, a visually pleasing font certainly isn’t required to get your work done- but when you spend an exorbitant portion of your week staring at those little squiggly characters on the screen, it wouldn’t hurt if they looked good, right?
This is the question the burgeoning premium-programming-font market is asking prospective buyers, and if Dank Mono’s recent successful launch is any indicator- the demand is definitely there.
On the other end of the spectrum, however, is a sizable contingent of programmers that don’t support the idea of spending anywhere from $40 — $250 on a purely aesthetic modification. In the function vs. form argument, this group is firmly planted on the functional side.
Herein lies the purpose of this article. We’re going to outline options that will work for you, regardless of which camp you currently sit in. Who knows- after seeing a few examples of those monospace-compatible cursive italics in action, you might just cross the aisle. Never say never.
Paid Programming Fonts
We’ll start with the paid fonts. These are premium fonts that require purchase of a license in order to use.
PSA Regarding Paid Fonts:
During my search for these fonts, I noticed quite a few comments scolding the artists for how much they are charging — sometimes for even charging money at all. But just like any painting, image, or icon, these fonts are artistic products that many hours went into creating.
So again, if these fonts are something you are interested in, please support the artists and purchase them as intended, or don’t use them at all. (Don’t pirate).
Also: I am not affiliated with any artist/font listed in this article. I am not receiving any commission/remuneration for promotion of these fonts.
This, ladies and gentlemen, is the Cadillac of programming fonts.
Operator Mono — view and purchase here.
First on the list of paid fonts is also probably the most famous — or infamous, (depending on how you see it), programming font out there — Operator Mono. This, ladies and gentlemen, is the Cadillac of programming fonts.
Operator is a highly recognizable monospaced font with ligatures and glyphs and a cursive italic variant. Within most IDE’s, you can find specialized syntax themes that set various portions of the syntax (comments, variables, types, etc) to italic, so as to activate the cursive functionality.
Some may find the cursive difficult to read, so if you’re worried you may fall into that category — don’t fret. You can absolutely still use a standard syntax theme, without the cursive italics activated.
For most, the more likely cause of hesitation with this particular font is probably going to be its price. This is the most expensive font on our list, coming in at $199.
Its price has generated plenty of opinions (both for and against), but the one thing I believe we can all agree upon — it’s a beautiful font.
For information regarding activating Operator’s ligatures, as well as other helpful tips like terminal/IDE-specific instructions and directions for use with the Stylish browser plugin, check out its Github page, here.
Dank Mono — find it here.
To continue the list of paid fonts, we’ll next go with what is likely the most recent addition to the community: Dank Mono.
Dank is a recent release that has burst onto the scene and generated quite a bit of notoriety. Many well-known programmers have mentioned or included the font in their podcasts, tweets, and projects — and deservedly so.
Dank is a monospaced, ligature-supported font created specifically with programming in mind. It shares some notable similarities with Operator Mono, but at a fraction of its price.
Dank includes useful, easy-to-read ligatures, as well as a number of nice-looking glyphs. Take a look at Dank’s page for a more complete idea of the font’s capabilities.
Also similar to our first font, Operator Mono, Dank utilizes a cursive italic variant that looks great while coding.
Dank Mono is the least expensive paid font on our list. It will set you back a reasonable $46.
PragmataPro — available for purchase here.
Last up on our list of paid fonts, and my personal favorite, is PragmataPro. Pragmata is a monospaced font with ligatures built with programming, math, and engineering in mind.
Pragmata has been optimized to be highly readable while still being compact, to maintain legibility with large amounts of text on the screen. It has no interline spacing, and has more than 8000 characters specifically designed to maintain composure at small font sizes.
On top of its superior readability and pragmatic design, PragmataPro has a large collection of unique ligatures, awesome box-drawing capabilities, glyphs, and support for multiple languages.
PragmataPro will run you $68.
Free Programming Fonts
The second portion of our list is dedicated to free programming fonts. These fonts are available completely free of charge — but that doesn’t necessarily mean that they are of any lower quality than the premium fonts.
Fonts with support for ligatures have been marked with the “||” symbol next to their names.
Note: if you are wondering what I’m referring to when I reference font ligatures, take a look here.
|| Fira Code — download here.
To kick off this subsection, we’ll start out with what might be considered the king of free programming fonts — Fira Code. Fira Code is a heavyweight in the world of programming typography, and for good reason.
Packing a huge collection of expertly-designed programming ligatures, superior readability, and widespread support, Fira Code is a font that deserves — no, commands — to be in every programmer’s collection.
|| Monoid — test it out and download here.
Second up on the list of free programming fonts, and probably my favorite in this section, is Monoid.
Monoid is an open-source monospaced font built with programming in mind. With an awesome set of ligatures, great readability, and a beautiful look, I personally can’t believe this font is free. In lieu of paying for it, consider throwing a star to Monoid’s Github repository, here.
On top of everything above, Monoid packs another unique feature: Monoisome.
Monoisome is a secondary font that allows FontAwesome glyphs to be automatically rendered within your code. How cool is that?
|| Hasklig — download here.
Hasklig is another great looking ligature font with support for most of the composite glyphs you’ll encounter while programming.
It enjoys widespread support among IDE’s/Text Editors, as well as support for Powerline symbols. I’ve found Hasklig to be a great choice when editing large files where I need increased readability or a larger font size.
Hack — preview and download here.
Hack is a classic programming font built from the ground up with highly readable, recognizable glyphs and clear syntax. The Hack team just released version 3 of the font, and it has never looked better.
Hack’s tagline is “by devs, for devs.” With over 1500 glyphs, Powerline support, and multi-language capability, this font deserves a spot in your collection.
Further, with alt-hack, a stylistic alternate glyph libraby for the hack font, users are able to personally customize any of Hack’s glyphs. Don’t like the default zero (0) glyph? Customize it using alt-hack.
Hack doesn’t carry the same ligature support as some of the previous fonts on the list, but take a look at it — does it even need them? It’s a damn good looking font, and highly functional to boot.
Check out their Github page here.
Input Mono — get it here.
Another great open source choice is Input Mono.
From Input’s page:
“Input is a flexible system of fonts designed specifically for code by David Jonathan Ross. It offers both monospaced and proportional fonts, all with a large range of widths, weights, and styles for richer code formatting.”
Input’s super clean typeface is always clear — it looks great anywhere. It isn’t just great for coding — with 168 different weights and styles, it’ll fit just about anywhere you want to feature it. See Input’s own description of what makes it different, here.
Input also includes a customize page that allows you to choose custom versions of several frequently used characters/glyphs.
All in all, Input is another gorgeous font that we are lucky to have access to completely free of charge. Go download it today.
Office Code Pro — download here.
Office Code Pro is another great option. From their Github page:
“Office Code Pro is a customized version of Source Code Pro, the monospaced sans serif originally created by Paul D. Hunt for Adobe Systems Incorporated. The customizations were made specifically for text editors and coding environments, but are still very usable in other applications.”
Free Programming Fonts — Assorted
There are a ton more great, high quality programming fonts — too many to list in detail here.
I’m going to name a few more of my personal favorites below, but I would encourage everyone to check out an amazing resource to see the rest: programmingfonts.org.
Programmingfonts.org has a long list of awesome, free programming fonts with previews, descriptions, and links for download.
On top of that, they have a really cool interactive editor where you can test-drive any of the fonts on their list, to see what they would look like in your editor, without needing to download and install them first.
The test-drive web app also has an assortment of themes and options, so that you can really get a feel for how the font would look on your screen. Check out the test-drive app here.
Below are a few classic fonts included in their list, as well as some of my personal favorites:
DejaVu Sans Mono
Droid Sans Mono
Source Code Pro
This is going to wrap up the article. While I’m confident that I’ve outlined most of the highest quality programming fonts available today, I’m sure there are some I’ve missed. This list is not exhaustive.
If I’ve missed a big one, or your absolute favorite, I would encourage you to do two things:
- Check out Programmingfonts.org ‘s interactive previewer, and make sure that the font you’re thinking of isn’t already in their list. There are a ton of super high-quality, free programming fonts in their list that I didn’t include here, for brevity’s sake.
- If the font you’re thinking of is not in their list, and I did indeed miss it, please respond to this article or DM me @caulfieldOwen on Twitter. I’ll add it to the list!
Final Note: we in the programming community are really blessed to have such a wide array of beautiful, performant options when choosing a font for our editors, IDE’s, and terminals.
Please support the authors and artists that created these fonts — both open source and paid — by either starring their Github repositories or sharing the fonts with a friend. For the paid choices, once again: please, please do not attempt to pirate their work. It’s just not cool.
Thanks for reading!
Check out some of my other work on Medium: