Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arrowtype/shantell-sans
Shantell Sans, from Shantell Martin, is a marker-style font built for creative expression, typographic play, and animation.
https://github.com/arrowtype/shantell-sans
art font handwriting variablefonts
Last synced: about 1 month ago
JSON representation
Shantell Sans, from Shantell Martin, is a marker-style font built for creative expression, typographic play, and animation.
- Host: GitHub
- URL: https://github.com/arrowtype/shantell-sans
- Owner: arrowtype
- License: ofl-1.1
- Created: 2020-06-30T15:22:37.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-17T18:12:29.000Z (6 months ago)
- Last Synced: 2024-10-31T05:35:13.459Z (about 1 month ago)
- Topics: art, font, handwriting, variablefonts
- Language: HTML
- Homepage: https://shantellsans.com
- Size: 716 MB
- Stars: 408
- Watchers: 10
- Forks: 6
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Authors: AUTHORS.txt
Awesome Lists containing this project
- awesome-design - Shantell Sans - style font built for creative expression, typographic play, and animation. :+1: (Fonts / Others)
- my-awesome-list - shantell-sans - style font built for creative expression, typographic play, and animation. | arrowtype | 419 | (HTML)
README
# Shantell Sans
Shantell Sans, from [Shantell Martin](https://shantellmartin.art/), is a marker-style font built for creative expression, typographic play, and animation.
![Shantell Sans with Shantell Martin artwork, calling it ”A font for you”](specimens/shantell_sans-hero_16x9.png)
Shantell Sans is a project based on the artwork, handwriting, and creative philosophy of Shantell Martin. Rather than trying to exactly mimick or “replace” Shantell’s writing, Shantell Sans takes inspiration from marker-based fonts like Comic Sans & Inkwell Sans. It aims to create an authetically typographic system with a single core shape per character, in order to deliver a simple, inviting, and energetic tone while encouraging freedom and play.
To download Shantell Sans, [please see the latest release](https://github.com/arrowtype/shantell-sans/releases) and download the zip file.
### Project credits
Project conception and creative direction by [Shantell Martin](https://shantellmartin.art/info).
Type design & development by [Arrow Type](https://arrowtype.com) / Stephen Nixon.
Cyrillic type design by [Anya Danilova](http://anyadanilova.com).
Additional support from [Google Fonts](https://fonts.google.com).
### Type Specimen / Minisite
Shantell Sans has a minisite at [shantellsans.com](https://shantellsans.com), with an open repo on GitHub at [arrowtype/shantell-sans-specimen](https://github.com/arrowtype/shantell-sans-specimen).
## Font Features
### Styles / Instances
Shantell Sans includes a wide array of styles, available both in a single variable font and in separate static font files.
![Font styles in Shantell Sans](specimens/shantell-sans-waterfall_square.gif)
### Variable Axes
Shantell’s writing is dynamic and doesn’t adhere to a rigid baseline or precise metrics, so Shantell Sans employs *variable axes* are to reflect this flexibility in a fluid range of styles.
![Axes in Shantell Sans](specimens/shantell_sans-axes.png)
| Axis | Tag | Range | Default | Description |
| :---------- | :----- | -------: | ------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Weight | `wght` | 300–800 | 300 | Light to ExtraBold. Can be defined with the `font-weight` CSS property. |
| Italic | `ital` | 0–1 | 0 | Upright to Italic. Can be defined with the `font-style` CSS property. |
| Bounce | `BNCE` | -100–100 | 0 | Emulates the bouncy baseline of handwriting. Note: see below for how to make this fully work in MS Word and Adobe Illustrator → [(“Making Randomization Work”)](#making-randomization-work-bounce-and-informality-axesstyles). |
| Informality | `INFM` | 0–100 | 0 | Emulates the irregular shaping and proportions of handwriting. |
| Spacing | `SPAC` | 0–100 | 0 | Adds extra spacing to the left and right of each glyph. |Bounce, Informality, and Spacing can be defined in the `font-variation-settings` CSS property. See [this guide to using custom axes in CSS](https://variablefonts.io/about-variable-fonts/#custom) for more information.
### Character set
Shantell Sans supports a wide range of 380+ languages using Latin & Cyrillic scripts, throughout Europe, the Americas, central Asia, and Vietnam.
![Characters in Shantell Sans](specimens/shantell_sans-character_set.png)
It includes the following characters:
```
A À Á Â Ã Ä Å Ā Ă Ą Ǎ Ǻ Ȁ Ȃ Ạ Ả Ấ Ầ Ẩ Ẫ Ậ Ắ Ằ Ẳ Ẵ Ặ B C Ç Ć Ĉ Ċ Č D Ď E È É Ê Ë Ē Ĕ Ė Ę Ě Ȅ Ȇ Ẹ Ẻ Ẽ Ế Ề Ể Ễ Ệ F G Ĝ Ğ Ġ Ģ Ǧ H Ĥ I Ì Í Î Ï Ĩ Ī Ĭ Į İ Ȉ Ȋ Ỉ Ị J Ĵ K Ķ L Ĺ Ļ Ľ M N Ñ Ń Ņ Ň O Ò Ó Ô Õ Ö Ō Ŏ Ő Ơ Ǫ Ȍ Ȏ Ȫ Ȭ Ȱ Ọ Ỏ Ố Ồ Ổ Ỗ Ộ Ớ Ờ Ở Ỡ Ợ P Q R Ŕ Ŗ Ř Ȑ Ȓ S Ś Ŝ Ş Š Ș T Ţ Ť Ț U Ù Ú Û Ü Ũ Ū Ŭ Ů Ű Ų Ư Ǔ Ȕ Ȗ Ụ Ủ Ứ Ừ Ử Ữ Ự V W Ŵ Ẁ Ẃ Ẅ X Y Ý Ŷ Ÿ Ȳ Ỳ Ỵ Ỷ Ỹ Z Ź Ż Ž Æ Ǽ Ð Ø Ǿ Þ Đ Ħ IJ Ŀ Ł Ŋ Œ Ŧ Ə DŽ LJ NJ Dž Lj Nj ẞ Ω a à á â ã ä å ā ă ą ǎ ǻ ȁ ȃ ạ ả ấ ầ ẩ ẫ ậ ắ ằ ẳ ẵ ặ b c ç ć ĉ ċ č d ď e è é ê ë ē ĕ ė ę ě ȅ ȇ ẹ ẻ ẽ ế ề ể ễ ệ f g ĝ ğ ġ ģ ǧ h ĥ i ì í î ï ĩ ī ĭ į ȉ ȋ ỉ ị j ĵ k ķ l ĺ ļ ľ m n ñ ń ņ ň o ò ó ô õ ö ō ŏ ő ơ ǫ ȍ ȏ ȫ ȭ ȱ ọ ỏ ố ồ ổ ỗ ộ ớ ờ ở ỡ ợ p q r ŕ ŗ ř ȑ ȓ s ś ŝ ş š ș t ţ ť ț u ù ú û ü ũ ū ŭ ů ű ų ư ǔ ȕ ȗ ụ ủ ứ ừ ử ữ ự v w ŵ ẁ ẃ ẅ x y ý ÿ ŷ ȳ ỳ ỵ ỷ ỹ z ź ż ž ß æ ǽ ð ø ǿ þ đ ħ ı ij ĸ ŀ ł ŋ œ ŧ dž lj nj ə ȷ Ђ Є Ѕ І Ї Ј Љ Њ Ћ Џ А Ӑ Ӓ Б В Г Ѓ Д Е Ѐ Ё Ӗ Ж Ӂ Ӝ З Ӟ И Ѝ Й Ӣ Ӥ К Ќ Л М Н О Ӧ П Р С Т У Ў Ӯ Ӱ Ӳ Ф Х Ц Ч Ӵ Ш Щ Ъ Ы Ӹ Ь Э Ю Я Ѣ Ѫ Ѳ Ѵ Ґ Ғ Ҕ Җ Ҙ Қ Ҝ Ҡ Ң Ҥ Ҫ Ү Ұ Ҳ Ҷ Ҹ Һ Ӏ Ӌ Ӕ Ә Ө Ӷ Ԛ Ԝ а ӑ ӓ б в г ѓ д е ѐ ё ӗ ж ӂ ӝ з ӟ и й ѝ ӣ ӥ к ќ л м н о ӧ п р с т у ў ӯ ӱ ӳ ф х ц ч ӵ ш щ ъ ы ӹ ь э ю я ђ є ѕ і ї ј љ њ ћ џ ѣ ѫ ѳ ѵ ґ ғ ҕ җ ҙ қ ҝ ҡ ң ҥ ҫ ү ұ ҳ ҷ ҹ һ ӌ ӏ ӕ ә ө ӷ ԛ ԝ ff fi fl ffi ffl ʼ ª º ̀ ́ ̂ ̃ ̄ ̆ ̇ ̈ ̉ ̊ ̋ ̌ ̏ ̑ ̒ ̛ ̣ ̤ ̦ ̧ ̨ ̮ ̱ ̵ 0 1 2 3 4 5 6 7 8 9 ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁄ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ¼ ½ ¾ ⅓ ⅔ ⅛ ⅜ ⅝ ⅞ _ - ‐ – — ( ) [ ] { } ⟨ ⟩ # % ‰ ' " ‘ ’ “ ” ‚ „ ‹ › « » * † ‡ . , : ; … ! ¡ ? ¿ / / \ | ¦ ‖ & § ¶ ℓ № · • ◦ ′ ″ ʹ ʺ + − ± ÷ × = < > ≤ ≥ ≈ ≠ ¬ ∅ ℮ µ π Ω ⁒ ∂ ∆ ∏ ∑ ∕ ∙ √ ∞ ∫ $ ¢ £ ¤ ¥ ₡ ₤ ₦ ₩ ₫ € ƒ ₭ ₮ ₱ ₲ ₴ ₵ ₸ ₹ ₺ ₼ ₽ ฿ ₨ ₪ ₾ ₿ ^ ~ ´ ` ˝ ˆ ˇ ˘ ˜ ¯ ¨ ˙ ˚ ¸ ˛ © ® ™ ° ⏸ ◆ ◇ ○ ● ■ □ ▪ ▫ ▲ △ ▶ ▷ ▼ ▽ ◀ ◁ ▴ ▵ ▸ ▹ ▾ ▿ ◂ ◃ ♡ ♥ ◊ ✓ ✔ ← ↑ → ↓ ↔ ↕ ↖ ↗ ↘ ↙ ◌ @
```### OpenType Features
#### User-facing features
The following features control font options you might wish to adjust in software and via the [CSS property `font-feature-settings`](https://developer.mozilla.org/en-US/docs/Web/CSS/font-feature-settings).
| Feature | Tag | Description |
| :------------------------- | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------- |
| Case-sensitive punctuation | `case` | Makes punctuation fit cap-height for uppercase typesetting |
| Arbitrary Fractions | `frac` | Makes proper fractions from strings like 1/2 and 12/345 |
| Tabular Figures | `tnum` | Numbers & currencies are monospaced across styles by default to improve table layout, but this makes certain punctuation become tabular as well |
| Proportional Figures | `pnum` | Makes numbers take up a natural amount of space |
| Ordinals | `ordn` | Activates ordinals, primarily for Spanish |
| Superscript | `sups` | Activates superscript numerals, e.g. for footnotes & exponents |
| Scientific Inferiors | `sinf` | Activates subscript/inferior numerals, e.g. for scientific chemical notations |
| Slashed Zero | `zero` | Activates a slashed form of zero for higher legibility numbering |
| Standard Ligatures | `liga` | Converts 3+ repeated hyphens into wavy lines, just for fun |
| Stylistic Sets | `ss0X` | Several stylistic sets exist to help toggle different character forms for Cyrillic languages, as a backup to software-level localization |#### Other features
Other features are mostly intended to be handled by software and ignored by users.
| Feature | Tag | Description |
| :------------------- | :----- | :--------------------------------------------------------------------------------------------------------------------------- |
| Contexual Alternates | `calt` | On by default; activates a ligature for `її`, used in Ukrainian |
| Localized Forms | `locl` | Supports special character-design requirements for various languages (TRK, CAT, ROM, MOL, NLD, BGR, SRB, MKD, UKR, and more) |
| Required Ligatures | `rlig` | On by default; adds pseudo-random pattern to alternates in Irregular & Bouncy styles |Also included are `aalt`, `kern`, `ccmp`, `dnom`, `numr`, `mark`, and `mkmk`.
### Making randomization work (Bounce and Informality axes/styles)
In most apps and web browers, the *Bounce* and *Informality* axes and styles automatically apply randomization to text. Specifically, the font will cycle through several alternates of each glyph, to make text more lively and give it a more “handwritten” appearance. Under the hood, this is done via the `rlig` OpenType feature. This should be on by default everywhere, but unfortunately, in some apps you will need to specifically activate this feature.
Adobe Illustrator (Click to expand)
To use `rlig` in Adobe Illustrator, you must use one of the “Middle Eastern” line composers (as of Illustrator 2023, Version 27).
1. Navigate to Illustrator > Preferences > Type
2. Click the checkbox “Show Indic Options”
3. Then, open the Paragraph panel (Window > Type > Paragraph)
4. Open the hamburger/flyout menu of the Paragraph panel, and select “Middle Eastern & South Asian Every-line Composer”Note: this is harder than it should be, as `rlig` is supposed to work by default – and does in most apps! If you would like Adobe to improve this, please [go vote ”Critical” on this Adobe Forum Post](https://illustrator.uservoice.com/forums/333657-illustrator-desktop-feature-requests/suggestions/33434134-opentype-ligature-features-ccmp-and-rlig-do-not-wo).
Microsoft Word (Windows 11) (Click to expand)
1. Search for `Font Settings` in the top search bar.
2. In the ”Advanced” tab, find the ”Ligatures” menu and select **Standard Only**If you find issues with randomization in other apps (or if you run into any other problems), please [file an issue in this repo](https://github.com/arrowtype/shantell-sans/issues)!
## Build
How to build the fonts locally (Click to expand)
### Set up requirements
Make a virtual environment:
```bash
python3 -m venv venv
```Activate venv:
```
source venv/bin/activate
```Install dependencies:
```bash
pip install -U -r requirements.txt
```Finally, give the build scripts permission to run:
```bash
chmod +x scripts--build/*.sh
```### Building the fonts
```bash
source venv/bin/activate # activate venv if not already active
```Clean the prior run prep:
```bash
make clean
```Then, run the variable font build:
```bash
make vf
```This will take the `.glyphspackage` source and create the folder `sources/build-prep` with intermediate sources required for the final font build. When the build succeeds, the variable font will open in your default font-opening application (I recommend Font Goggles).
If you want, you can also build the static fonts. Be aware: there are a lot of static fonts, so this takes some time!
```bash
make statics
```If you want to build everything all at once, you can use `make full`. If you just want to run the build prep pipeline, you can use `make prep`.
## Release
Update the version number in `version.txt` to the desired next release number, then build fonts with the `make` workflow described above.
A zipped archive of the fonts folder is created as the final step of the `make statics` command.
Finally, go update the download links in the Shantell Sans web specimen.