Thinkmill / Thinkmill/keystatic

Replace Google Fonts with Fontsource import to improve Keystatic CMS performance, enable offline usage, and improve user privacy

Open
#1,452 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
2.4k
Forks
159
Avg merge
21h 41m
Merged PRs (30d)
2

Description

Hi!

First of all, thanks for creating such a useful and polished Git-based CMS!

Proposal

Consider replacing Google Fonts with https://github.com/fontsource/fontsource and install their npm modules to bundle fonts together with the code and completely remove the need for sending requests to Google Fonts. This would enable offline usage of Keystatic CMS in scenarios where the Google font has not yet been cached, improve performance for all users (especially with slow network conditions) and improve privacy by not letting Google track font requests.

Fontsource has been a big improvement in most of my projects in the past years, and I strongly recommend Keystatic to load fonts using this method as well:
https://fontsource.org/docs/getting-started/introduction

There are currently three code locations that would need to be updated
https://github.com/search?q=repo%3AThinkmill%2Fkeystatic%20fonts.google&type=code

It would make sense to solve https://github.com/Thinkmill/keystatic/issues/1292 at the same time as switching the loading strategy of the fonts.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the three font references identified by the repository code search and read issue #1292 for related requirements. Replace the Google Fonts loading strategy with bundled Fontsource npm modules, then verify that the fonts work offline and no requests are sent to Google Fonts.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend, performance, web-dev
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.