Installation
Install FontGet on your system using one of the commands below. FontGet is a single binary executable with no external dependencies.
> Binaries are available for both amd64 and arm64 architectures.
Mac, Linux (Shell)
curl -fsSL https://raw.githubusercontent.com/Graphixa/FontGet/main/scripts/install.sh | sh
Windows (PowerShell)
irm https://raw.githubusercontent.com/Graphixa/FontGet/main/scripts/install.ps1 | iex
More installation options can be found in the Installation Guide.
Installation via Package Manager
Windows
WinGet
winget install --id "Graphixa.FontGet"
Chocolatey
choco install fontget
Scoop
scoop bucket add fontget https://github.com/Graphixa/scoop-bucket
scoop install fontget
macOS
Homebrew
brew tap Graphixa/homebrew-tap
brew install fontget
Linux
AUR (Arch User Repository) (Arch + Arch-based distros)
yay -S fontget
# or
paru -S fontget
Build and Install from Source
Instructions for building FontGet from source can be found in the Contributing guide.
Getting Started
FontGet makes it easy to search, install, and manage fonts from various sources. Here are some common commands to get you started:
Search for Fonts to Install
fontget search "roboto"
Install a Font
# Install a single font (using the font ID)
fontget add "google.roboto"
# Install multiple fonts at once
fontget add "google.roboto" "google.open-sans"
Uninstall Font
# Remove an installed font
fontget remove "google.roboto"
# Remove multiple installed fonts
fontget remove "google.roboto" "google.open-sans"
List Installed Fonts
# List all installed fonts
fontget list
# List all fonts matching "sans"
fontget list "sans"
For a full list of commands refer to the 📖 Command Documentation or by running fontget help in your terminal after installing.
Additional resources
Commands
| Command | Purpose | Example |
|---|
help | Show all fontget commands | fontget help |
search | Search for fonts across sources | fontget search "roboto" |
browse | Browse the font catalog interactively | fontget browse |
add | Install a font from available sources | fontget add "google.roboto" |
remove | Uninstall fonts from the system | fontget remove "google.roboto" |
list | List installed fonts on the system | fontget list |
info | Show detailed info about a font | fontget info "google.roboto" |
sources | Manage font sources | fontget sources |
config | Manage configuration | fontget config |
theme | Pick a terminal theme interactively | fontget theme |
export | Export fonts to a manifest | fontget export --output fonts.json |
import | Import fonts from a manifest | fontget import fonts.json |
backup | Backup installed fonts files to a zip | fontget backup --scope user |
version | Show version/build info | fontget version |
update | Update FontGet | fontget update |
completion | Generate shell completions | fontget completion |
> [!TIP]
> For more detailed info on FontGet usage, run fontget --help or check out the Documentation.
Credits
Design & UI
Font sources
Why did I make FontGet?
It started out as a way for me to re-install fonts every time I reinstalled my computer or get a new machine. As a graphic designer it's a pain to have to reload all my fonts and keep track of everything. With FontGet I can just run fontget import, or a custom script and have all my fonts reloaded. I've recently been assisting with deploying machines at my workplace and we always needed fonts loaded onto the machines before they were deployed to new users, so I kind of made FontGet to help solve the problem of deploying fonts to a heap of machines via scripting.
I've also been getting into ricing Linux and Windows systems which always require different fonts, so I wanted something that was lightweight, cross-platform, and based in the terminal to quickly download the font I need. What started as a concept PowerShell script expanded into a fully fledged Go project to support not just Windows but also macOS and Linux. From there I just kinda fell in love with the project and added all the features that I (and maybe others) could want.
Where does it go from here?
Honestly apart from some bug fixes and some other cross platform tests and some optimizations, I don't think there are any features that I would want to add. There are a number of things that may not work 100% so I want to spend what spare time I have just improving the codebase and fixing up any little bugs that I've missed. If you have a problem or find a bug please file an issue. Anyway thats my story. I hope you love using FontGet and please star if you do and feel free to buy me a coffee if it somehow saves you time or if you wamt tp show your appreciation!
Other Items
Support me
If FontGet has helped you or you'd like to support me or the project, consider a one-time donation:
