Skip to content

Commit

Permalink
Merge pull request #54 from coreyhu/googlefonts-template-integration
Browse files Browse the repository at this point in the history
Googlefonts template integration
  • Loading branch information
coreyhu authored Jul 15, 2022
2 parents c284827 + e8eabf1 commit 3aada59
Show file tree
Hide file tree
Showing 75 changed files with 5,666 additions and 40 deletions.
32 changes: 0 additions & 32 deletions .circleci/config.yml

This file was deleted.

101 changes: 101 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
name: Build font and specimen

on: [push, release]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Install sys tools/deps
run: |
sudo apt-get update
sudo apt-get install ttfautohint
sudo snap install yq
- uses: actions/cache@v2
with:
path: ./venv/
key: ${{ runner.os }}-venv-${{ hashFiles('**/requirements*.txt') }}
restore-keys: |
${{ runner.os }}-venv-
- name: Do first-run script if necessary
run: make .init.stamp
if: github.repository != 'googlefonts/googlefonts-project-template'
- uses: stefanzweifel/git-auto-commit-action@v4
name: First-run setup
if: github.repository != 'googlefonts/googlefonts-project-template'
with:
file_pattern: .init.stamp README.md requirements.txt OFL.txt
commit_message: "Personalize for this repo"
- name: gen zip file name
id: zip-name
shell: bash
# Set the archive name to repo name + "-assets" e.g "MavenPro-assets"
run: echo "ZIP_NAME=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}')-fonts" >> $GITHUB_ENV
# If a new release is cut, use the release tag to auto-bump the source files
- name: Bump release
if: github.event_name == 'release'
run: |
. venv/bin/activate
SRCS=$(yq e ".sources[]" sources/config.yaml)
TAG_NAME=${GITHUB_REF/refs\/tags\//}
echo "Bumping $SRCS to $TAG_NAME"
for src in $SRCS
do
bumpfontversion sources/$src --new-version $TAG_NAME;
done
- name: Build font
run: make build
- name: Check with fontbakery
run: make test
continue-on-error: true
- name: proof
run: make proof
- name: setup site
run: cp scripts/index.html out/index.html
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: ${{ github.ref == 'refs/heads/main' }}
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./out
- name: Archive artifacts
uses: actions/upload-artifact@v2
with:
name: ${{ env.ZIP_NAME }}
path: |
fonts
out
outputs:
zip_name: ${{ env.ZIP_NAME }}
release:
# only run if the commit is tagged...
if: github.event_name == 'release'
# ... and it builds successfully
needs:
- build
runs-on: ubuntu-latest
env:
ZIP_NAME: ${{ needs.build.outputs.zip_name }}
steps:
- uses: actions/checkout@v2
- name: Download artefact files
uses: actions/download-artifact@v2
with:
name: ${{ env.ZIP_NAME }}
path: ${{ env.ZIP_NAME }}
- name: Zip files
run: zip -r ${{ env.ZIP_NAME }}.zip ${{ env.ZIP_NAME }}
- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ env.ZIP_NAME }}.zip
asset_name: ${{ env.ZIP_NAME }}.zip
tag: ${{ github.ref }}
overwrite: true
body: "Production ready fonts"
22 changes: 19 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
.DS_Store
*~
venv
build.stamp
proof
fonts
node_modules
package-lock.json
package.json
sources/master_ufo
sources/instance_ufo
.vscode/*
venv/
.vscode

# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
Empty file added .init.stamp
Empty file.
55 changes: 55 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
SOURCES=$(shell python3 scripts/read-config.py --sources )
FAMILY=$(shell python3 scripts/read-config.py --family )
DRAWBOT_SCRIPTS=$(shell ls documentation/*.py)
DRAWBOT_OUTPUT=$(shell ls documentation/*.py | sed 's/\.py/.png/g')

help:
@echo "###"
@echo "# Build targets for $(FAMILY)"
@echo "###"
@echo
@echo " make build: Builds the fonts and places them in the fonts/ directory"
@echo " make test: Tests the fonts with fontbakery"
@echo " make proof: Creates HTML proof documents in the proof/ directory"
@echo " make images: Creates PNG specimen images in the documentation/ directory"
@echo

build: build.stamp

venv: venv/touchfile

build.stamp: venv .init.stamp sources/config.yaml $(SOURCES)
. venv/bin/activate; rm -rf fonts/; gftools builder sources/config.yaml
. venv/bin/activate; fonttools varLib.instancer fonts/variable/Urbanist\[ital,wght\].ttf ital=0 -o fonts/variable/Urbanist\[wght\].ttf --update-name-table
. venv/bin/activate; fonttools varLib.instancer fonts/variable/Urbanist\[ital,wght\].ttf ital=1 -o fonts/variable/Urbanist-Italic\[wght\].ttf --update-name-table
touch build.stamp

.init.stamp: venv
. venv/bin/activate; python3 scripts/first-run.py

venv/touchfile: requirements.txt
test -d venv || python3 -m venv venv
. venv/bin/activate; pip install -Ur requirements.txt
touch venv/touchfile

test: venv build.stamp
. venv/bin/activate; mkdir -p out/ out/fontbakery; fontbakery check-googlefonts -l WARN --succinct --badges out/badges --html out/fontbakery/fontbakery-report.html --ghmarkdown out/fontbakery/fontbakery-report.md $(shell find fonts/ttf -type f)

proof: venv build.stamp
. venv/bin/activate; mkdir -p out/ out/proof; gftools gen-html proof $(shell find fonts/ttf -type f) -o out/proof

images: venv build.stamp $(DRAWBOT_OUTPUT)
git add documentation/*.png && git commit -m "Rebuild images" documentation/*.png

%.png: %.py build.stamp
python3 $< --output $@

clean:
rm -rf venv
find . -name "*.pyc" | xargs rm delete

update-ufr:
npx update-template https://github.com/googlefonts/Unified-Font-Repository/

update:
pip install --upgrade $(dependency); pip freeze > requirements.txt
12 changes: 11 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,17 @@

# Urbanist

[![coreyhu](https://circleci.com/gh/coreyhu/Urbanist.svg?style=shield)](https://app.circleci.com/github/coreyhu/Urbanist/pipelines)
[![][Fontbakery]](https://coreyhu.github.io/Urbanist/fontbakery/fontbakery-report.html)
[![][Universal]](https://coreyhu.github.io/Urbanist/fontbakery/fontbakery-report.html)
[![][GF Profile]](https://coreyhu.github.io/Urbanist/fontbakery/fontbakery-report.html)
[![][Outline Correctness]](https://coreyhu.github.io/Urbanist/fontbakery/fontbakery-report.html)
[![][Shaping]](https://coreyhu.github.io/Urbanist/fontbakery/fontbakery-report.html)

[Fontbakery]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcoreyhu%2FUrbanist%2Fgh-pages%2Fbadges%2Foverall.json
[GF Profile]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcoreyhu%2FUrbanist%2Fgh-pages%2Fbadges%2FGoogleFonts.json
[Outline Correctness]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcoreyhu%2FUrbanist%2Fgh-pages%2Fbadges%2FOutlineCorrectnessChecks.json
[Shaping]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcoreyhu%2FUrbanist%2Fgh-pages%2Fbadges%2FShapingChecks.json
[Universal]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcoreyhu%2FUrbanist%2Fgh-pages%2Fbadges%2FUniversal.json

<p align="center">
<img src="https://raw.githubusercontent.com/coreyhu/Urbanist/master/documentation/readme/demo_2.png" width=80%>
Expand Down
135 changes: 135 additions & 0 deletions documentation/image1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
# This script is meant to be run from the root level
# of your font's git repository. For example, from a Unix terminal:
# $ git clone my-font
# $ cd my-font
# $ python3 documentation/image1.py --output documentation/image1.png

# Import moduels from external python packages: https://pypi.org/
from drawbot_skia.drawbot import *
from fontTools.ttLib import TTFont
from fontTools.misc.fixedTools import floatToFixedToStr

# Import moduels from the Python Standard Library: https://docs.python.org/3/library/
import subprocess
import sys
import argparse

# Constants, these are the main "settings" for the image
WIDTH, HEIGHT, MARGIN, FRAMES = 2048, 2048, 128, 1
FONT_PATH = "fonts/ttf/Rubik-Regular.ttf"
FONT_LICENSE = "OFL v1.1"
AUXILIARY_FONT = "Helvetica"
AUXILIARY_FONT_SIZE = 48
BIG_TEXT = "Aa"
BIG_TEXT_FONT_SIZE = 1024
BIG_TEXT_SIDE_MARGIN = MARGIN * 3.1
BIG_TEXT_BOTTOM_MARGIN = MARGIN * 5.5
GRID_VIEW = False # Change this to "True" for a grid overlay

# Handel the "--output" flag
# For example: $ python3 documentation/image1.py --output documentation/image1.png
parser = argparse.ArgumentParser()
parser.add_argument("--output", metavar="PNG", help="where to write the PNG file")
args = parser.parse_args()

# Load the font with the parts of fonttools that are imported with the line:
# from fontTools.ttLib import TTFont
# Docs Link: https://fonttools.readthedocs.io/en/latest/ttLib/ttFont.html
ttFont = TTFont(FONT_PATH)

# Constants that are worked out dynamically
MY_URL = subprocess.check_output("git remote get-url origin", shell=True).decode()
MY_HASH = subprocess.check_output("git rev-parse --short HEAD", shell=True).decode()
FONT_NAME = ttFont["name"].getDebugName(4)
FONT_VERSION = "v%s" % floatToFixedToStr(ttFont["head"].fontRevision, 16)


# Draws a grid
def grid():
stroke(1, 0, 0, 0.75)
strokeWidth(2)
STEP_X, STEP_Y = 0, 0
INCREMENT_X, INCREMENT_Y = MARGIN / 2, MARGIN / 2
rect(MARGIN, MARGIN, WIDTH - (MARGIN * 2), HEIGHT - (MARGIN * 2))
for x in range(29):
polygon((MARGIN + STEP_X, MARGIN), (MARGIN + STEP_X, HEIGHT - MARGIN))
STEP_X += INCREMENT_X
for y in range(29):
polygon((MARGIN, MARGIN + STEP_Y), (WIDTH - MARGIN, MARGIN + STEP_Y))
STEP_Y += INCREMENT_Y
polygon((WIDTH / 2, 0), (WIDTH / 2, HEIGHT))
polygon((0, HEIGHT / 2), (WIDTH, HEIGHT / 2))


# Remap input range to VF axis range
# This is useful for animation
# (E.g. sinewave(-1,1) to wght(100,900))
def remap(value, inputMin, inputMax, outputMin, outputMax):
inputSpan = inputMax - inputMin # FIND INPUT RANGE SPAN
outputSpan = outputMax - outputMin # FIND OUTPUT RANGE SPAN
valueScaled = float(value - inputMin) / float(inputSpan)
return outputMin + (valueScaled * outputSpan)


# Draw the page/frame and a grid if "GRID_VIEW" is set to "True"
def draw_background():
newPage(WIDTH, HEIGHT)
fill(0)
rect(-2, -2, WIDTH + 2, HEIGHT + 2)
if GRID_VIEW:
grid()
else:
pass


# Draw main text
def draw_main_text():
fill(1)
stroke(None)
font(FONT_PATH)
fontSize(BIG_TEXT_FONT_SIZE)
# Adjust this line to center main text manually.
# TODO: This should be done automatically when drawbot-skia
# has support for textBox() and FormattedString
#text(BIG_TEXT, ((WIDTH / 2) - MARGIN * 4.75, (HEIGHT / 2) - MARGIN * 2.5))
text(BIG_TEXT, (BIG_TEXT_SIDE_MARGIN, BIG_TEXT_BOTTOM_MARGIN))


# Divider lines
def draw_divider_lines():
stroke(1)
strokeWidth(4)
lineCap("round")
line((MARGIN, HEIGHT - MARGIN), (WIDTH - MARGIN, HEIGHT - MARGIN))
line((MARGIN, MARGIN + (MARGIN / 2)), (WIDTH - MARGIN, MARGIN + (MARGIN / 2)))
stroke(None)


# Draw text describing the font and it's git status & repo URL
def draw_auxiliary_text():
# Setup
font(AUXILIARY_FONT)
fontSize(AUXILIARY_FONT_SIZE)
POS_TOP_LEFT = (MARGIN, HEIGHT - MARGIN * 1.5)
POS_TOP_RIGHT = (WIDTH - MARGIN, HEIGHT - MARGIN * 1.5)
POS_BOTTOM_LEFT = (MARGIN, MARGIN)
POS_BOTTOM_RIGHT = (WIDTH - MARGIN * 0.95, MARGIN)
URL_AND_HASH = MY_URL + "at commit " + MY_HASH
URL_AND_HASH = URL_AND_HASH.replace("\n", " ")
# Draw Text
text(FONT_NAME, POS_TOP_LEFT, align="left")
text(FONT_VERSION, POS_TOP_RIGHT, align="right")
text(URL_AND_HASH, POS_BOTTOM_LEFT, align="left")
text(FONT_LICENSE, POS_BOTTOM_RIGHT, align="right")


# Build and save the image
if __name__ == "__main__":
draw_background()
draw_main_text()
draw_divider_lines()
draw_auxiliary_text()
# Save output, using the "--output" flag location
saveImage(args.output)
# Print done in the terminal
print("DrawBot: Done")
Binary file removed fonts/otf/Urbanist-Black.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-BlackItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Bold.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-BoldItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-ExtraBold.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-ExtraBoldItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-ExtraLight.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-ExtraLightItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Italic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Light.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-LightItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Medium.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-MediumItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Regular.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-SemiBold.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-SemiBoldItalic.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-Thin.otf
Binary file not shown.
Binary file removed fonts/otf/Urbanist-ThinItalic.otf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Black.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-BlackItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Bold.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-BoldItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-ExtraBold.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-ExtraBoldItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-ExtraLight.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-ExtraLightItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Italic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Light.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-LightItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Medium.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-MediumItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Regular.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-SemiBold.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-SemiBoldItalic.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-Thin.ttf
Binary file not shown.
Binary file removed fonts/ttf/Urbanist-ThinItalic.ttf
Binary file not shown.
Binary file removed fonts/variable/Urbanist-Italic[wght].ttf
Binary file not shown.
Binary file removed fonts/variable/Urbanist[ital,wght].ttf
Binary file not shown.
Binary file removed fonts/variable/Urbanist[wght].ttf
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Black.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-BlackItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Bold.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-BoldItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-ExtraBold.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-ExtraBoldItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-ExtraLight.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-ExtraLightItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Italic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Light.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-LightItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Medium.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-MediumItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Regular.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-SemiBold.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-SemiBoldItalic.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-Thin.woff2
Binary file not shown.
Binary file removed fonts/webfonts/Urbanist-ThinItalic.woff2
Binary file not shown.
7 changes: 7 additions & 0 deletions out/badges/GoogleFonts.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"color": "green",
"label": "Google Fonts",
"logoSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 294 294\"><style>.a{fill:#333;}</style><path d=\"M147 0C228 0 294 66 294 147 294 228 228 294 147 294 66 294 0 228 0 147 0 66 66 0 147 0Z\" fill=\"#b3eeff\"/><path d=\"M102 90C30 56 28 161 92 148L98 236C132 234 162 233 184 235L189 162C189 153 177 166 142 146 169 151 185 150 195 145 227 155 253 141 246 111 240 88 217 81 185 76 138 70 138 113 102 90Z\" fill=\"#fff\"/><path d=\"M105 162L91 162 93 238 146 237 146 224 106 225 106 207 142 206 141 194 106 195Z\" class=\"a\"/><path d=\"M196 162L195 195 159 194 158 206 194 207 193 226 154 224 154 236 206 239 209 163Z\" class=\"a\"/><path d=\"M204 72L203 84 205 85C212 86 218 88 223 90 227 92 230 95 233 98 236 101 238 104 239 107 240 110 240 114 240 117 240 120 239 124 237 127 236 130 234 133 231 135 228 137 225 138 222 139 218 140 214 140 210 140 206 139 202 138 197 136 192 133 187 130 183 125L182 124 173 131 174 133C180 139 186 144 194 148 200 151 206 153 211 154 217 154 222 154 227 152 232 151 236 148 240 145 244 142 247 138 249 133 252 128 253 123 254 118 254 113 254 108 252 103 250 99 247 94 243 90 239 86 234 82 228 79 221 75 214 73 206 72Z\" class=\"a\"/><path d=\"M78 77C76 77 74 78 72 78 68 79 63 80 60 82 56 84 53 86 50 89 47 92 45 95 43 99 42 102 41 106 40 110 39 114 39 117 40 121 40 125 41 129 43 132 44 136 47 139 50 142 52 145 56 148 61 150 65 152 70 154 76 155 90 157 101 155 109 148L114 117 77 111 76 123 99 127 97 141C92 143 87 144 80 143 74 142 69 140 65 137 60 134 57 130 55 126 53 121 53 116 53 111 54 107 55 104 57 101 60 98 62 96 65 94 68 92 72 91 75 91 79 90 83 90 86 90 90 91 94 92 98 94 101 95 104 97 106 99L108 100 115 90 114 89C106 83 98 80 88 78 84 78 81 77 78 77Z\" class=\"a\"/><path d=\"M175 69C173 69 171 69 170 70 168 70 166 71 164 71 163 72 161 73 159 74L116 96 123 108 166 86C166 85 167 85 168 85 168 84 169 84 170 84 172 83 173 83 174 83 175 83 176 83 177 84 178 84 180 84 181 85 182 86 183 87 185 89 186 90 187 92 188 94 189 96 190 98 191 101L191 103 203 99 202 97C201 94 200 90 198 87 197 84 195 81 193 78 191 76 189 74 187 73 185 72 183 71 181 70 179 69 177 69 175 69Z\" class=\"a\"/></svg>",
"message": "88%",
"schemaVersion": 1
}
7 changes: 7 additions & 0 deletions out/badges/OutlineCorrectnessChecks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"color": "yellow",
"label": "Outline Correctness Checks",
"logoSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 294 294\"><style>.a{fill:#333;}</style><path d=\"M147 0C228 0 294 66 294 147 294 228 228 294 147 294 66 294 0 228 0 147 0 66 66 0 147 0Z\" fill=\"#b3eeff\"/><path d=\"M102 90C30 56 28 161 92 148L98 236C132 234 162 233 184 235L189 162C189 153 177 166 142 146 169 151 185 150 195 145 227 155 253 141 246 111 240 88 217 81 185 76 138 70 138 113 102 90Z\" fill=\"#fff\"/><path d=\"M105 162L91 162 93 238 146 237 146 224 106 225 106 207 142 206 141 194 106 195Z\" class=\"a\"/><path d=\"M196 162L195 195 159 194 158 206 194 207 193 226 154 224 154 236 206 239 209 163Z\" class=\"a\"/><path d=\"M204 72L203 84 205 85C212 86 218 88 223 90 227 92 230 95 233 98 236 101 238 104 239 107 240 110 240 114 240 117 240 120 239 124 237 127 236 130 234 133 231 135 228 137 225 138 222 139 218 140 214 140 210 140 206 139 202 138 197 136 192 133 187 130 183 125L182 124 173 131 174 133C180 139 186 144 194 148 200 151 206 153 211 154 217 154 222 154 227 152 232 151 236 148 240 145 244 142 247 138 249 133 252 128 253 123 254 118 254 113 254 108 252 103 250 99 247 94 243 90 239 86 234 82 228 79 221 75 214 73 206 72Z\" class=\"a\"/><path d=\"M78 77C76 77 74 78 72 78 68 79 63 80 60 82 56 84 53 86 50 89 47 92 45 95 43 99 42 102 41 106 40 110 39 114 39 117 40 121 40 125 41 129 43 132 44 136 47 139 50 142 52 145 56 148 61 150 65 152 70 154 76 155 90 157 101 155 109 148L114 117 77 111 76 123 99 127 97 141C92 143 87 144 80 143 74 142 69 140 65 137 60 134 57 130 55 126 53 121 53 116 53 111 54 107 55 104 57 101 60 98 62 96 65 94 68 92 72 91 75 91 79 90 83 90 86 90 90 91 94 92 98 94 101 95 104 97 106 99L108 100 115 90 114 89C106 83 98 80 88 78 84 78 81 77 78 77Z\" class=\"a\"/><path d=\"M175 69C173 69 171 69 170 70 168 70 166 71 164 71 163 72 161 73 159 74L116 96 123 108 166 86C166 85 167 85 168 85 168 84 169 84 170 84 172 83 173 83 174 83 175 83 176 83 177 84 178 84 180 84 181 85 182 86 183 87 185 89 186 90 187 92 188 94 189 96 190 98 191 101L191 103 203 99 202 97C201 94 200 90 198 87 197 84 195 81 193 78 191 76 189 74 187 73 185 72 183 71 181 70 179 69 177 69 175 69Z\" class=\"a\"/></svg>",
"message": "66%",
"schemaVersion": 1
}
7 changes: 7 additions & 0 deletions out/badges/ShapingChecks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"color": "inactive",
"label": "Shaping Checks",
"logoSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 294 294\"><style>.a{fill:#333;}</style><path d=\"M147 0C228 0 294 66 294 147 294 228 228 294 147 294 66 294 0 228 0 147 0 66 66 0 147 0Z\" fill=\"#b3eeff\"/><path d=\"M102 90C30 56 28 161 92 148L98 236C132 234 162 233 184 235L189 162C189 153 177 166 142 146 169 151 185 150 195 145 227 155 253 141 246 111 240 88 217 81 185 76 138 70 138 113 102 90Z\" fill=\"#fff\"/><path d=\"M105 162L91 162 93 238 146 237 146 224 106 225 106 207 142 206 141 194 106 195Z\" class=\"a\"/><path d=\"M196 162L195 195 159 194 158 206 194 207 193 226 154 224 154 236 206 239 209 163Z\" class=\"a\"/><path d=\"M204 72L203 84 205 85C212 86 218 88 223 90 227 92 230 95 233 98 236 101 238 104 239 107 240 110 240 114 240 117 240 120 239 124 237 127 236 130 234 133 231 135 228 137 225 138 222 139 218 140 214 140 210 140 206 139 202 138 197 136 192 133 187 130 183 125L182 124 173 131 174 133C180 139 186 144 194 148 200 151 206 153 211 154 217 154 222 154 227 152 232 151 236 148 240 145 244 142 247 138 249 133 252 128 253 123 254 118 254 113 254 108 252 103 250 99 247 94 243 90 239 86 234 82 228 79 221 75 214 73 206 72Z\" class=\"a\"/><path d=\"M78 77C76 77 74 78 72 78 68 79 63 80 60 82 56 84 53 86 50 89 47 92 45 95 43 99 42 102 41 106 40 110 39 114 39 117 40 121 40 125 41 129 43 132 44 136 47 139 50 142 52 145 56 148 61 150 65 152 70 154 76 155 90 157 101 155 109 148L114 117 77 111 76 123 99 127 97 141C92 143 87 144 80 143 74 142 69 140 65 137 60 134 57 130 55 126 53 121 53 116 53 111 54 107 55 104 57 101 60 98 62 96 65 94 68 92 72 91 75 91 79 90 83 90 86 90 90 91 94 92 98 94 101 95 104 97 106 99L108 100 115 90 114 89C106 83 98 80 88 78 84 78 81 77 78 77Z\" class=\"a\"/><path d=\"M175 69C173 69 171 69 170 70 168 70 166 71 164 71 163 72 161 73 159 74L116 96 123 108 166 86C166 85 167 85 168 85 168 84 169 84 170 84 172 83 173 83 174 83 175 83 176 83 177 84 178 84 180 84 181 85 182 86 183 87 185 89 186 90 187 92 188 94 189 96 190 98 191 101L191 103 203 99 202 97C201 94 200 90 198 87 197 84 195 81 193 78 191 76 189 74 187 73 185 72 183 71 181 70 179 69 177 69 175 69Z\" class=\"a\"/></svg>",
"message": "SKIP",
"schemaVersion": 1
}
Loading

0 comments on commit 3aada59

Please sign in to comment.