FontGet is a lightweight, cross-platform terminal font manager that can discover, install, and manage fonts across Windows, Mac OS & Linux.
Fontget supports installing fonts from the following sources:
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
amd64andarm64architectures.
curl -fsSL https://raw.githubusercontent.com/Graphixa/FontGet/main/scripts/install.sh | shirm https://raw.githubusercontent.com/Graphixa/FontGet/main/scripts/install.ps1 | iexMore installation options can be found in the Installation Guide.
winget install --id "Graphixa.FontGet"
Chocolatey (coming soon)
choco install fontgetscoop bucket add fontget https://github.com/Graphixa/scoop-bucket
scoop install fontgetbrew tap Graphixa/homebrew-tap
brew install fontgetAUR (Arch User Repository) (coming soon)
yay -S fontget
# or
paru -S fontgetInstructions for building FontGet from source can be found in the Contributing guide.
FontGet makes it easy to search, install, and manage fonts from various sources. Here are some common commands to get you started:
fontget search "roboto"# Install a single font (using the font ID)
fontget add "google.roboto"
# Install multiple fonts at once
fontget add "google.roboto" "google.open-sans"# Remove an installed font
fontget remove "google.roboto"
# Remove multiple installed fonts
fontget remove "google.roboto" "google.open-sans"# 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.
- π FontGet documentation: Everything about FontGet including, development, automation and more
- β¬οΈ Installation Guide: Complete installation instructions for all platforms
- π How to Use FontGet: Complete command reference and usage examples
- π€ Contributing: How to contribute to the project
- π FontGet-Sources: The font data repository that powers FontGet
| Command | Purpose | Example |
|---|---|---|
help |
Show all fontget commands | fontget help |
search |
Search for fonts across sources | fontget search "roboto" |
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 |
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.
- Catppuccin (color palette)
- Bubble Tea by Charmbracelet (TUI framework)
It started out as a way for me to re-install fonts everytime I reinstal 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 font's reloaded. I've recently been assisting with deploying machines at my workplace and we always fonts loaded onto the machines before they were deployed to new users and so I kind of made fontget to help solve this as well for 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 light weight, 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 Mac OS 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.
Honestly apart from some bug fixes and checking some things cross platform 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. Anyway this is my story. I hope you like it and please enjoy using FontGet!
- This tool is liceensed und ther MIT License
- To contribute, please read the contributing instructions.
If FontGet has helped you or you'd like to support me or the project, consider a one-time donation: