Malini is a variable typeface designed for reading — long-form Malayalam text set at body sizes, where
clarity and typographic color matter most. The name means garland.
Built on variable font technology, a single font file spans four axes: Weight, Width, Slant, and Optical Size.
There are nine named weights from Thin to Black, a Display variant for headings, and fine-grained control
across every axis in between.
Download the latest fonts from the
GitLab releases or
smc.org.in.
Weight
Nine weights from Thin (100) to Black (900), with smooth interpolation between any value. For light text on
dark backgrounds, Regular (400) tends to sit well; for dark text on light backgrounds, Medium (500)
gives a touch more presence.
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
തിരുവനന്തപുരം കൊല്ലം പത്തനംതിട്ട കോട്ടയം ആലപ്പുഴ
The opening of Vayalar Rama Varma's Ashwamedham — Bold for the title,
Regular for the verse. Adjust weight, slant, and width to see how each axis shapes the tone of the passage.
അശ്വമേധം
ആരൊരാളെൻ കുതിരയെ കെട്ടുവാൻ
ആരൊരാളതിൻ മാർഗ്ഗം മുടക്കുവാൻ ?
ദിഗ്വിജയത്തിനെൻ സർഗ്ഗശക്തിയാ-
മിക്കുതിരയെ വിട്ടയയ്ക്കുന്നു ഞാൻ!
വിശ്വസംസ്കാരവേദിയിൽ പുത്തനാ-
മശ്വമേധം നടത്തുകയാണു ഞാൻ!
നിങ്ങൾ കണ്ടോ ശിരസ്സുയർത്തിപ്പായു-
മെൻ കുതിരയെ, ചെമ്പൻ കുതിരയെ?
English
Carl Sagan's Pale Blue Dot. Weight, width, slant, optical size, and size — all axes
available on a single passage to explore how each one changes the texture of text.
Look again at that dot. That's here. That's home. That's us. On it everyone you love, everyone you know, everyone you ever heard of, every human being who ever was, lived out their lives. The aggregate of our joy and suffering, thousands of confident religions, ideologies, and economic doctrines, every hunter and forager, every hero and coward, every creator and destroyer of civilization, every king and peasant, every young couple in love, every mother and father, hopeful child, inventor and explorer, every teacher of morals, every corrupt politician, every "superstar," every "supreme leader," every saint and sinner in the history of our species lived there — on a mote of dust suspended in a sunbeam.
Optical Size
Malini adjusts its internal geometry based on the intended rendering size. At small sizes, strokes gain
weight and spacing opens up for legibility. At display sizes, contrast sharpens and details become more
pronounced. Browsers apply this automatically through the opsz axis.
സംഗീതം കരിയിലക്കര communicate
Display
Malini Display is tuned for heading sizes — sharper stroke contrast, tighter spacing, more pronounced
details. It can also be used as body text for a more calligraphic feel.
പനകേറ്റക്കാരന്റെ ഇതിഹാസം.
പണ്ട്, പറന്നു പറന്ന് ചിറകുകടയുന്ന നാഗത്താന്മാർ പനങ്കുരലിൽ മാണിക്യമിറക്കിവെച്ചു ക്ഷീണം തീർക്കാറുണ്ടായിരുന്നു. നാഗത്താന്മാർക്കായി പനകേറ്റക്കാരൻ കള്ളു നേർന്നു വെച്ചു. പനഞ്ചോട്ടിലാകട്ടെ, അവൻ കുലദൈവങ്ങൾക്കു തെച്ചിപ്പൂ നേർന്നിട്ടു. ദൈവങ്ങളെയും പിതൃക്കളെയും ഷെയ്ഖ് തമ്പുരാനെയും സ്മരിച്ചേ പന കയറുകയുള്ളൂ.
OpenType Features
Malini ships with 12 layout features. Toggle each one below to see the difference.
Reph signs
The pres feature controls whether the reph form (് + ര) is conjoined or rendered separately.
പ്രകാശം ഗ്രാമം ശ്രമം അക്രമം പുത്രൻ
Postbase substitutions
The psts feature controls the conjoined or disjoined rendering of vowel signs
ു, ൂ, and ൃ.
കൂലി സംതൃപ്തി കുസുമം കൃത്യം പൂവ്
Ligatures
The liga feature applies standard ligatures — English forms like fi, fl,
ffi are handled automatically.
difficult ff fi fl ffi office after effect
Old-style numerals
With the onum feature enabled, numerals adopt proportional, variable-height forms
that blend into running text.
Stylistic alternates
The aalt feature provides alternate glyph forms for select characters.
പച്ച വെള്ളം കള്ളു് അങ്ങാടി കൂടെവിടെ
Variation Axes
| Axis | Tag | Range | Description |
| Weight | wght | 100–900, default 400 | Thin to Black. Also controllable via CSS font-weight. |
| Slant | slnt | 0 to −15, default 0 | Upright to slanted (15° clockwise). |
| Width | wdth | 75–125%, default 100 | Condensed to Expanded. Also controllable via CSS font-stretch. |
| Optical Size | opsz | 10–48, default 12 | Adjusts contrast and spacing for the target rendering size. |
Language Support
All Malayalam characters in Unicode 15 are present. Latin script is included. Malini supports approximately
294 languages covering ~2.8 billion speakers
(per hyperglot).
Using on the web
Load the variable font and define ranges for weight, width, and slant in @font-face.
Fine-tune with font-variation-settings where needed. Optical sizing is automatic by default
— disable with font-optical-sizing: none if you want manual control.
License
Malini is licensed under the SIL Open Font License, Version 1.1.
Copyright 2024 The Malini Project Authors
(source).