70 lines
3.5 KiB
Markdown
70 lines
3.5 KiB
Markdown
|
# GFonts Mirror Interface
|
||
|
<small>I need a better name :p</small>
|
||
|
|
||
|
This utility helps create CSS files to load your fonts from a mirror of Google Fonts from Google Font links.
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
1. Go to [gfonts.sofiaritz.com](https://gfonts.sofiaritz.com/).
|
||
|
2. Enter your Mirror URL (an Internet-accesible clone of the [Google Fonts repo](https://github.com/google/fonts)).
|
||
|
* If your site has low-traffic, feel free to use [my mirror](https://cdn.sofiaritz.com/fonts) :)
|
||
|
3. Click the _Transform_ button and the CSS will be generated for you!
|
||
|
* You can use the _Copy code_ button, but sometimes it fails, so keep that in mind!
|
||
|
|
||
|
## Self-hosting
|
||
|
|
||
|
### Google Fonts Mirror
|
||
|
|
||
|
Creating a Google Fonts mirror is an easy task. You need the following:
|
||
|
1. A reliable server (e.g. a VPS).
|
||
|
2. [git](https://git-scm.com/).
|
||
|
3. A way to host the files ([Caddy](https://caddyserver.com/), [NGINX](https://www.nginx.com/), [Apache HTTP Server](https://httpd.apache.org/), etc.)
|
||
|
4. (Technically this is not a requirement, but you should use one anyway) A domain.
|
||
|
|
||
|
Then follow the following steps:
|
||
|
1. Run `git clone https://github.com/google/fonts --branch main --single-branch --depth 1 [folder]`
|
||
|
* `[folder]` should be replaced with the folder where you will save the mirror.
|
||
|
* This is just a [shallow clone](https://git-scm.com/docs/git-clone#Documentation/git-clone.txt---depthltdepthgt)
|
||
|
of the repo. You can just `git clone` the repo, but it's not recommended due to disk and bandwidth usage.
|
||
|
2. Serve the files somewhere.
|
||
|
* [Caddy](https://caddyserver.com/docs/quick-starts/static-files)
|
||
|
* [NGINX](https://docs.nginx.com/nginx/admin-guide/web-server/serving-static-content/)
|
||
|
* [Apache](https://askubuntu.com/questions/556858/how-to-set-up-a-simple-file-server)
|
||
|
3. Check that the mirror works by accessing the `[root]/README.md`
|
||
|
* `[root]` should be replaced with your domain + the path where it's served (for example, [cdn.sofiaritz.com/fonts](https://cdn.sofiaritz.com/fonts)).
|
||
|
* If everything is working, a README.md file like [this one](https://github.com/google/fonts/blob/main/README.md) should be downloaded.
|
||
|
4. (Optional) Create a `index.html` file.
|
||
|
* You can create a `index.html` file with something you want to tell about the mirror at `[folder]`.
|
||
|
* For example, check [cdn.sofiaritz.com/fonts](https://cdn.sofiaritz.com/fonts).
|
||
|
* I use that page to teach the users about the dangers of services like Google Fonts, how I handle personal data
|
||
|
and my contact information.
|
||
|
|
||
|
### GFonts Interface
|
||
|
|
||
|
1. Run `yarn build`.
|
||
|
2. Follow step 2 of [Self-hosting § Google Fonts Mirror](#google-fonts-mirror) with the `dist/` folder.
|
||
|
|
||
|
## Contributing
|
||
|
|
||
|
Feel free to contribute to this project! Create an account on my git server, open an issue or a PR, and I'll make sure to
|
||
|
review it as soon as possible :)
|
||
|
|
||
|
You can also send me the [diff](https://git-scm.com/docs/git-diff)
|
||
|
or use [git-send-email](https://git-scm.com/docs/git-send-email).
|
||
|
|
||
|
### Notes
|
||
|
* Make sure to delete your `yarn.lock` when a new [pb-parser](https://git.sofiaritz.com/sofia/pb-parser/src/branch/main)
|
||
|
commit is pushed.
|
||
|
|
||
|
## Decentralization
|
||
|
|
||
|
Right now the only instance of this interface is [mine](https://gfonts.sofiaritz.com/), and the only Google Fonts mirror
|
||
|
that I know is mine.
|
||
|
|
||
|
I try to maintain everything and help everyone to achieve decentralization, but at the end of the day I'm just a random
|
||
|
woman.
|
||
|
|
||
|
**Do you have a Google Fonts mirror?** Please, [contact me](https://sofiaritz.com/en/contact)!
|
||
|
|
||
|
**Do you have another instance of this interface?** Please, [contact me](https://sofiaritz.com/en/contact)!
|