Skip to content

Graphixa/FontGet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

419 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

FontGet

FontGet - CLI Font Manager

Version License Go Version CI

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:

Google Fonts | Nerd Fonts | Font Squirrel

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 (coming soon)

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) (coming soon)

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"
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.

Credits

Design & UI

Font sources

Why did I make FontGet?

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.

Where does it go from here?

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!

Other Items

Support me

If FontGet has helped you or you'd like to support me or the project, consider a one-time donation:

ko-fi

About

A tiny, cross-platform CLI tool to install and manage fonts from the command line. Search for fonts, list installed fonts, install or remove fonts all from the CLI.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages