Skip to content
Fontsource Logo
Get font

About Playpen Sans Thai.

Playpen Sans Thai was designed by TypeTogether after over two years of primary research into handwriting education for Latin-based languages, available at primarium.info.

It is a variable font with a weight range from Thin (100) to ExtraBold (800). It supports two different writing systems: Thai and Latin, covering Thai and over 332 Latin-based languages, along with a set of “reward icons” as emoji. The superfamily also includes a Pan-African Latin, Greek, Cyrillic (Playpen Sans), Arabic (Playpen Sans Arabic), Devanagari (Playpen Sans Deva), and Hebrew (Playpen Sans Hebrew) fonts that expand the language support of the system.

Playpen Sans Thai has alternate glyphs for each character that are automatically applied as you type, with a built-in shuffler that both ensures variety and avoids repetition. This adds to the overall organic, spontaneous, and authentic feel of the handwritten style.

To contribute, see github.com/TypeTogether/Playpen-Sans

Watch the video on Youtube

Thai

Playpen Sans Thai is a playful and distinctive typeface that reimagines the traditional Thai script with a unique twist. Unlike conventional Thai fonts that rely on simple looped or loopless terminals, this design introduces a subtle yet innovative feature: hook-shaped terminals that hint at the natural starting point of each letter. Inspired by extensive research into the most legible letterforms for graphic novels, this detail not only enhances readability but also adds a touch of whimsy. The flowing strokes capture the fluid, continuous nature of Thai writing, striking a perfect balance between casual and steady—a rhythm that feels neither too fast nor too slow. The result is a font with a lively, fun-loving personality, designed to bring joy and clarity to every word.

A casual handwriting font

Some typefaces excel at just one thing, while others do multiple things well. Playpen Sans stands out by perfectly imitating casual handwriting, blending the organic feel of something made by hand with the precision of a professional digital typeface. Handwritten text is naturally inconsistent, but digital fonts aim for uniformity. Playpen Sans bridges this gap by offering a set of characters that are “the same, but different,” creating an authentic and human-like appearance within the constraints of digital design. It has a set of clear letterforms that are easy to write and recognize. The design forms a bridge between handwritten and typographic letters, friendly to both little readers and adults.

To achieve this, Playpen Sans includes multiple versions of each character and a built-in shuffler, ensuring no two shapes repeat too closely. This results in text that feels spontaneous, fun, and organic, while maintaining the functionality of a modern typeface. Designed with non-designers in mind, it shines in informal settings like greeting cards, invitations, children’s books, and graphic novels. Its clarifying features, such as straight and curved endings for certain letters and optional shapes, add to its versatility.

Playpen Sans combines the best of both worlds: the aesthetic charm of handwritten text and the technological capabilities of a digital font. It’s spontaneous, authentic, and effortlessly bridges the gap between the organic and the digital.

Emojis

Playpen Sans has emojis for breezy and encouraging uses, that each match the eight named weights of the Latin. Find here the list of all the emojis available. You can copy and paste them into your document editor when using the font. 😉

🌞 😍 ☠ ☹ 😉 ✏ 📖 🏠 ✍ 🧩 🦖 🪐 ✈ 🌠 🎂 🎨 📣 👆 👍 👎 🎯 🪫 ✅ ❌ 🏅 🦄

Designer
TypeTogether, Sirin Gunkloy, Laura Meseguer, Veronika Burian, José Scaglione
Classification
Handwriting, Sans Serif
Coverage
405 languages
Package release
v8
Updated
Mar 12, 2026
Monthly usage
  • npm918 downloads last month
  • jsDelivr8,445 requests last month
License
OFL-1.1

Style and character

Visual characteristics associated with this family.

  • Childlike
  • Sincere
  • Handwritten
  • Informal

Characters and features

What this family includes and how its files are structured.

Explore glyphs →

Language and character coverage

Thai is the primary writing system.

  • AfarQafar · Latin
  • AchineseBahsa Acèh · Latin
  • Saint Lucian Creole French, Latin
  • AcoliLatin
  • AfrikaansLatin
  • AhtnaAtnakenaegeʼ · Latin
  • Assyrian Neo-Aramaic, Latin
  • Ainu (Latin)
  • AlagoLatin
  • Gheg AlbanianGegnisht · Latin
  • AmahuacaLatin
  • YaneshaʼLatin
  • AmisLatin
  • AmarakaeriLatin
  • AragoneseAragonés · Latin
  • AnaangAnaañ · Latin
  • Uab MetoUab Metô · Latin
  • MapucheMapudungun · Latin
  • ArapahoLatin
  • Artificial languages, World (Latin)
  • AsuKipare · Latin
  • AwakLatin
  • AymaraAymar · Latin
  • Bashkir (Latin)
  • BalineseBali · Latin
  • Batak TobaLatin
  • Banda, West CentralLatin
  • BenchLatin
  • BedawiyetLatin
  • BembaChibemba · Latin
  • BetawiLatin
  • BenaEkibena · Latin
  • BariLatin
  • BislamaLatin
  • BikolPandan Bikol · Latin
  • BanjarLatin
  • SiksikaLatin
  • BengaLatin
  • BapukuLatin
  • BretonBrezhoneg · Latin
  • Bodo (Latin)
  • BosnianBosanski · Latin
  • BangwinjiLatin
  • Rinconada BikolPandan Bikol · Latin
  • BokobaruLatin
  • BilenLatin
  • CatalanCatalà · Latin
  • GarifunaLatin
  • Kaqchikel, CentralLatin
  • ChachiLatin
  • Chavacano, Philippines (Latin)
  • Cashibo-CacataiboLatin
  • Candoshi-ShapraLatin
  • CebuanoBinisaya · Latin
  • DikakaLatin
  • ChigaRukiga · Latin
  • ChamorroChamorru · Latin
  • Chinantec, OjitlánLatin
  • ChuukeseChuuk · Latin
  • ChokweLatin
  • Chin, HakaLatin
  • AsháninkaLatin
  • CorsicanCorsu · Latin
  • ColoradoLatin
  • Cofán, Latin
  • CaquinteLatin
  • Ashéninka, PichisLatin
  • Crimean TurkishLatin
  • SãotomenseLatin
  • Seselwa Creole FrenchSeselwa · Latin
  • CzechČeština · Latin
  • KashubianKaszëbsczi · Latin
  • Tedim ChinLatin
  • KwereLatin
  • WelshCymraeg · Latin
  • Cuyonon (Latin)
  • DanishDansk · Latin
  • TaitaKidawida · Latin
  • GermanDeutsch · Latin
  • C’LelaLatin
  • Lower SorbianDolnoserbšćina · Latin
  • Central DusunLatin
  • ChidurumaLatin
  • DrungLatin
  • DawroLatin
  • Jola-FonyiJóola-Fóoñi · Latin
  • Emai-Iuleha-OraLatin
  • EnglishLatin
  • SpanishEspañol · Latin
  • Ese EjjaLatin
  • EstonianEesti · Latin
  • BasqueEuskara · Latin
  • ExtremaduranLatin
  • West Albay BikolPandan Bikol · Latin
  • FinnishSuomi · Latin
  • FilipinoLatin
  • FijianVakaviti · Latin
  • Finnish, KvenLatin
  • FuliiruLatin
  • FaroeseFøroyskt · Latin
  • GalloLatin
  • FrenchFrançais · Latin
  • Old FrenchLatin
  • ArpitanLatin
  • Northern FrisianLatin
  • FriulianFurlan · Latin
  • Western FrisianFrysk · Latin
  • IrishGaeilge · Latin
  • AlekanoGahuku · Latin
  • Guadeloupean Creole French, Martinique (Latin)
  • Guianese Creole FrenchLatin
  • Scottish GaelicGàidhlig · Latin
  • ut-Ma’inLatin
  • GilberteseKiribati · Latin
  • Gelao, KlauLatin
  • GalicianGalego · Latin
  • Middle High GermanLatin
  • GamoLatin
  • GofaLatin
  • Swiss GermanSchwyzerdütsch · Latin
  • WayuuWayuunaiki · Latin
  • Gourmanchémagulimancema · Latin
  • GusiiEkegusii · Latin
  • ManxGaelg · Latin
  • 'AleQale · Latin
  • GyeleLatin
  • GuarayuLatin
  • HangaLatin
  • HarariLatin
  • HadiyyaHadiyyisa · Latin
  • Hmong, Northern QiandongHmong (Latin) · Latin
  • HiligaynonIlonggo · Latin
  • Chin, MatuLatin
  • Hmonghveb Hmub · Latin
  • Hmong, Southern QiandongLatin
  • HaniLatin
  • Hmong NjuaLatin
  • Hindustani, SarnamiLatin
  • HopiHopilàvayi · Latin
  • CroatianHrvatski · Latin
  • Upper SorbianHornjoserbšćina · Latin
  • Haitian CreoleKreyòl Ayisyen · Latin
  • HungarianMagyar · Latin
  • Huastec, San Luís PotosíLatin
  • InterlinguaLatin
  • IndonesianIndonesia · Latin
  • Interlingue (Latin)
  • IlokoIlokano · Latin
  • IdoLatin
  • RigweLatin
  • IraqwLatin
  • IcelandicÍslenska · Latin
  • ItalianItaliano · Latin
  • IzereLatin
  • Jamaican Creole EnglishJamiekan · Latin
  • Lojban (Latin)lojban (Latin)
  • MachameLatin
  • JavaneseJawa · Latin
  • AdaraLatin
  • KalangaLatin
  • KutuLatin
  • MakondeChimakonde · Latin
  • KabuverdianuLatin
  • QʼeqchiʼLatin
  • KongoKikongo · Latin
  • KhasiKa Ktien Khasi · Latin
  • KuanyamaOshikwanyama · Latin
  • Kazakh (Latin)
  • KalaallisutLatin
  • KalenjinMarkweta · Latin
  • KimbunduLatin
  • KonjoLatin
  • KaondeLatin
  • KarelianKarjala · Latin
  • ShambalaKishambaa · Latin
  • ColognianKölsch · Latin
  • KitubaLatin
  • Kurdish (Latin)Kurmancî
  • KuriaLatin
  • KunamaLatin
  • CornishKernewek · Latin
  • Latin
  • Ladino (Latin)
  • Lango, UgandaLatin
  • LambaIchilamba · Latin
  • LuxembourgishLëtzebuergesch · Latin
  • Lingua Franca Nova, Latin
  • GandaLuganda · Latin
  • LigurianLigure · Latin
  • LadinLatin
  • LeleLatin
  • LombardLatin
  • OtuhoLatin
  • LozisiLozi · Latin
  • LithuanianLietuviškai · Latin
  • Luba-LuluaTshiluba · Latin
  • LuvaleLatin
  • LundaLatin
  • LuoDholuo · Latin
  • LuyiaLatin
  • LatvianLatviešu · Latin
  • LuwoLatin
  • Matsés (Latin)
  • MeruKîmîîrû · Latin
  • Mauritian CreoleKreol Morisien · Latin
  • MalagasyLatin
  • Makhuwa-MeettoImeetto · Latin
  • MinangkabauBaso Minangkabau · Latin
  • MískitoLatin
  • Mandinkamandinka · Latin
  • InnuInnu Aimun · Latin
  • MohawkKanien’kéha · Latin
  • Maranao (Latin)
  • MalteseMalti · Latin
  • Mixe, TotontepecLatin
  • Musi (Latin)
  • MuscogeeMvskoke · Latin
  • ManyikaLatin
  • MozarabicLatin
  • MasaabaLatin
  • Mazatec, IxcatlánLatin
  • Mambila, NigeriaLatin
  • NeapolitanNapulitano · Latin
  • CahungwaryaLatin
  • Norwegian Bokmålnorsk bokmål · Latin
  • NyembaLatin
  • North NdebeleisiNdebele · Latin
  • NdauLatin
  • NdambaLatin
  • Low GermanNiedersächsisch · Latin
  • NdongaLatin
  • LomweLatin
  • NguluLatin
  • Ao NagaLatin
  • DutchNederlands · Latin
  • Norwegian Nynorsknynorsk · Latin
  • NgindoLatin
  • NorwegianNorsk · Latin
  • NomatsiguengaLatin
  • NovialLatin
  • South NdebeleisiNdebele · Latin
  • NaraLatin
  • Jèrriais, Latin
  • Northern SothoSepedi · Latin
  • KombeLatin
  • Nupe-Nupe-TakoLatin
  • NyanjaChicheŵa · Latin
  • NyankoleRunyankore · Latin
  • NyoroLatin
  • OccitanLatin
  • OgbahLatin
  • OkiekLatin
  • OromoAfaan Oromoo · Latin
  • OroqenLatin
  • Otomi, MezquitalLatin
  • Tenango Otomi, Latin
  • ElfdalianLatin
  • Old Welsh, Latin
  • PampangaKapampangan · Latin
  • PapiamentoPapiamentu · Latin
  • Palauana tekoi er a Belau · Latin
  • PicardLatin
  • Paite Chin, Latin
  • PijinLatin
  • Pintupi-LuritjaLatin
  • PökootMarkweta · Latin
  • PolishPolski · Latin
  • PiedmontesePiemontèis · Latin
  • Pontic (Latin)
  • PohnpeianPohnpei · Latin
  • Crioulo, Upper GuineaLatin
  • PogoloLatin
  • PipilLatin
  • Old ProvençalLatin
  • Ashéninka PerenéLatin
  • PortuguesePortuguês · Latin
  • Punuyipunu · Latin
  • QuechuaRuna Simi · Latin
  • KʼicheʼQatzijob'al · Latin
  • Kichwa, Unified QuichuaLatin
  • Chimborazo Highland QuichuaRuna Simi · Latin
  • Quechua, South BolivianLatin
  • Quechua, AyacuchoLatin
  • Quechua, CuscoRunasimi · Latin
  • Quechua, Ambo-PascoLatin
  • Quechua, CajamarcaLatin
  • Quechua, Huamalíes-Dos de Mayo HuánucoLatin
  • Quechua, Margos-Yarowilca-LauricochaLatin
  • Quechua, North JunínLatin
  • Quechua, Huaylas AncashLatin
  • Quechua, Northern Conchucos AncashLatin
  • Quechua, Arequipa-La UniónLatin
  • Rapa (Latin)
  • Réunion Creole FrenchLatin
  • RejangLatin
  • RendilleLatin
  • ResheLatin
  • RomagnolLatin
  • Rohingya (Latin)
  • RomanshRumantsch · Latin
  • RundiIkirundi · Latin
  • RongaLatin
  • RomanianRomână · Latin
  • RomboLatin
  • LuguruLatin
  • AromanianArmani · Latin
  • KinyarwandaLatin
  • RwaLatin
  • SamburuSampur · Latin
  • SasakLatin
  • SanguShisango · Latin
  • SardinianSardu · Latin
  • ScotsScots Leid · Latin
  • Sassarese SardinianSardu · Latin
  • SenaCisena · Latin
  • SeriCmiique Iitom · Latin
  • SecoyaLatin
  • SangoSängö · Latin
  • Old IrishLatin
  • ShillukLatin
  • Shipibo-ConiboLatin
  • Arabic, Chadian SpokenLatin
  • SidamoLatin
  • SlovakSlovenčina · Latin
  • SlovenianSlovenščina · Latin
  • SalarLatin
  • Southern SamiÅarjelsaemiengïele · Latin
  • Lule SamiJulevusámegiella · Latin
  • Inari SamiAnarâškielâ · Latin
  • ShonaChishona · Latin
  • SomaliSoomaali · Latin
  • AlbanianShqip · Latin
  • Serbian (Latin)srpski (latinica, Crna Gora)
  • Sranan TongoLatin
  • SwatiSiswati · Latin
  • SahoLatin
  • Saterland FrisianLatin
  • SundaneseBasa Sunda · Latin
  • SukumaKisukuma · Latin
  • SwedishSvenska · Latin
  • SwahiliKiswahili · Latin
  • Swahili, CongoLatin
  • SubaLatin
  • SilesianŚlůnsko godka · Latin
  • Tetun DiliLatin
  • TetumLia Tetun · Latin
  • Tajik (Latin)
  • Thaiภาษาไทย
  • TivLatin
  • Tiwi (Latin)
  • Southern TujiaLatin
  • Turkmen (Latin)Türkmençe
  • TakwaneLatin
  • Klingon (Latin)
  • Talinga-BwisiLatin
  • TswanaSetswana · Latin
  • Nyasa TongaLatin
  • TongaLatin
  • Totonac, PapantlaLatin
  • ToposaLatin
  • Tok PisinLatin
  • TurkishTürkçe · Latin
  • TsongaXitsonga · Latin
  • TsamaiLatin
  • PurepechaLatin
  • Tatar (Latin)
  • TooroLatin
  • TulaLatin
  • TumbukaChitumbuka · Latin
  • TsuvadiLatin
  • Tzeltal, OxchucLatin
  • Tzotzil, ChamulaLatin
  • Uyghur (Latin)Uighur
  • UzbekO‘zbekcha · Latin
  • VenetianVèneto · Latin
  • VepsVepsä · Latin
  • VidundaLatin
  • MakhuwaEmakhuwa · Latin
  • VolapükLatin
  • VõroLatin
  • VunjoLatin
  • WalloonWalon · Latin
  • Wolaytta (Latin)
  • WarayWaray-Waray · Latin
  • WarlpiriLatin
  • WendatLatin
  • WolofLatin
  • XhosaisiXhosa · Latin
  • SogaLusoga · Latin
  • YaochiYao · Latin
  • YapeseWaab · Latin
  • YasaLatin
  • YucatecoMàaya t'àan · Latin
  • ZhuangLatin
  • ZaghawaLatin
  • Zapotec, MiahuatlánLatin
  • ZayseLatin
  • Comorian, NgazidjaLatin
  • ZigulaLatin
  • Malay (Latin)
  • ZandeLatin
  • ZáparoLatin
  • Zapotec, GüiláLatin
  • ZuluisiZulu · Latin
  • ZuniShiwiʼma · Latin

Styles and axes

8 weights in normal style.

Variable axes let you fine-tune the design between the values shown.

  • WeightAdjust the style from lighter to bolder in typographic color, by varying stroke weights, spacing and kerning, and other aspects of the type.wght · 100800 · default 400

OpenType features

Typographic behaviors that adjust character forms, spacing, and positioning. Availability can vary between files.

  • Access all alternatesMakes every alternate form in the font available for selection.aalt
  • Contextual alternatesChooses alternate forms that work better beside the surrounding letters.calt
  • Case-sensitive formsAdjusts punctuation and symbols to align with capital letters.case
  • Glyph compositionBuilds or separates glyphs so letters and marks shape correctly.ccmp
  • DISTApplies the font’s dist behavior during text shaping.dist
  • FractionsBuilds diagonal fractions from ordinary numbers.frac
  • KerningFine-tunes the space between specific pairs of characters.kern
  • Standard ligaturesReplaces common letter sequences with standard ligatures.liga
  • Localized formsUses character forms appropriate to the selected language or region.locl
  • Mark positioningPositions combining marks relative to their base characters.mark
  • Mark-to-mark positioningPositions combining marks relative to other marks.mkmk
  • OrdinalsUses letterforms designed for ordinal numbers.ordn
  • Required ligaturesApplies ligatures required for correct script shaping.rlig
  • Required variation alternatesSelects alternate forms required at specific variable-font settings.rvrn
  • Stylistic set 1Activates a coordinated set of alternate character designs.ss01
  • Stylistic set 3Activates a coordinated set of alternate character designs.ss03

License

Complete terms and attribution for this font.

View license source →
Attribution

Copyright 2023 The Playpen Sans Project Authors (https://github.com/TypeTogether/Playpen-Sans)

Copyright 2023 The Playpen Sans Project Authors (https://github.com/TypeTogether/Playpen-Sans)

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://openfontlicense.org


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded, 
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

Provenance

Where the files came from and what Fontsource distributes.

View upstream project →
Provider
Google Fonts
Source files
1
Formats
TTF
Revision
8b0a1d0f59