Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
rsheeter authored Mar 7, 2025
1 parent 844cf5f commit e6e64ce
Showing 1 changed file with 15 additions and 8 deletions.
23 changes: 15 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![CI Build Status](https://github.com/googlefonts/fontations/workflows/Continuous%20integration/badge.svg?branch=main)](https://github.com/googlefonts/fontations/actions/workflows/rust.yml?query=workflow%3AContinuous+integration+branch%3Amain)
[![CI Status](https://github.com/googlefonts/fontations/actions/workflows/rust.yml/badge.svg)](https://github.com/googlefonts/fontations/actions/workflows/rust.yml)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/fontations.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:fontations)


Expand All @@ -13,8 +13,8 @@ production tasks. For an overview of the motivations, see

## structure

Currently, this repo contains three main library crates: [`font-types`][], [`read-fonts`][],
and [`write-fonts`][], in addition to one binary crate, [`otexplorer`][]:
Currently, this repo contains four main library crates: [`font-types`][], [`read-fonts`][],
[`write-fonts`][], and [`skrifa`][]:

- `font-types` contains common definitions of the core types used in the
OpenType spec. This is a small crate, and is intended as a basic dependency
Expand All @@ -27,9 +27,9 @@ and [`write-fonts`][], in addition to one binary crate, [`otexplorer`][]:
as well as code for compiling these and writing out font files. It has an
optional dependency on `read-fonts`, in which case it can also parse font
data, which can then be modified and written back out to disk.
- [`otexplorer`][] is a binary crate for exploring the contents of font files.
It is developed as a debugging tool, and may also be useful as an example of
how the [`read-fonts`][] crate can be used.
- [`skrifa`][] is a mid level library that provides access to various types of
metadata contained in a font as well as support for loading glyph outlines.
It's primary purpose is to replace FreeType in Google applications.

## depgraph

Expand Down Expand Up @@ -100,7 +100,14 @@ To reproduce a fuzzer issue:
1. Pass the repro file to the fuzzer
* `target/x86_64-unknown-linux-gnu/release/fuzz_skrifa_outline ~/Downloads/clusterfuzz-testcase-minimized-fuzz_skrifa_outline-6213391169945600`

## contributing
## Performance

### Harfbuzz

https://github.com/harfbuzz/harfbuzz/blob/main/perf/README.md has instructions on
running harfbuzz benchmarks, including against Fontations.

## Contributing

We have included a few git hooks that you may choose to use to ensure that
patches will pass CI; these are in `resources/githooks`.
Expand All @@ -115,7 +122,7 @@ git config core.hooksPath "./resources/githooks"
**note**: If you wish to use the hooks on macOS, install the gnu coreutils
(`brew install coreutils`, via homebrew.)

## releasing
## Releasing

We use [`cargo-release`] to help guide the release process. It can be installed
with `cargo install cargo-release`. You may need to install `pkg-config` via your
Expand Down

0 comments on commit e6e64ce

Please sign in to comment.