What this site does
Unicode Bamini converts Tamil text in both directions between Unicode (the standard
encoding used by every modern phone, browser and word processor) and legacy font
encodings such as Bamini and Vanavil. Paste text on one side, read the
result on the other, then copy it or download it as a plain .txt file.
Everything runs inside your browser. There is no upload step, no account and no usage limit, and the site is free to use.
Why legacy Tamil encodings still matter
Bamini and Vanavil map Tamil characters onto ordinary Latin letters, so the text only looks like Tamil when the matching font is installed. That design keeps old workflows working — PageMaker, CorelDRAW and older Word documents are still common in Tamil publishing — but it also means the same file becomes unreadable on a phone or on a website that expects Unicode.
Converting between the two is not translation or OCR. It is a deterministic character mapping: the same input should always produce the same output, and no language model or guesswork is involved.
How the converter works
The engine is a rule-based mapper written in TypeScript. Each encoding is described by a single data file: consonants, independent vowels, vowel-sign rules, per-cluster overrides, literals and punctuation. Unicode to legacy therefore looks at one Tamil cluster at a time — a consonant plus its vowel sign, or a standalone vowel — and applies the matching rule.
The reverse direction cannot use a simple find-and-replace, because legacy codes overlap:
in Bamini, n starts both nf (கெ) and
nfh (கொ). Instead the engine expands every possible
legacy sequence into a lookup table and parses the input left to right, preferring the
reading that leaves the fewest stray characters and, on ties, the longest match.
Today that gives 301 Bamini mappings and 313 Vanavil mappings, plus 626 reverse sequences across both encodings.
Accuracy and the limits we publish
The engine runs a fixed self-test suite at build time. If any case fails, the build aborts, so the figure shown on the site cannot drift away from what is actually verified: 135/135 cases pass right now, and 127 of them are cross-checked against published Bamini key charts and the Open-Tamil reference tables.
That is not the same as claiming perfect accuracy, and this site does not claim it. Legacy fonts differ slightly between versions, a few rare clusters have no dedicated key, and mixed English–Tamil text can be ambiguous in the reverse direction. The remaining unverified clusters are listed openly on the Unicode to Bamini page rather than hidden.
Privacy by design
The converter has no backend. Your text is processed in the page and is never sent to this server or to any third party, which also means we cannot read, store or recover it. See the Privacy Policy for what advertising and analytics partners may collect.
Where our data comes from
- Mapping tables. Derived from the Open-Tamil project, which is published under the MIT licence. The tables were cleaned, de-duplicated and corrected for known upstream errors (for example the long ூ forms of வ and ப, and the combined ௌ forms).
- Corrections. Cross-checked against published Bamini key charts and the actual key positions in the font, not copied from a single source.
- Test cases. Written for this project: everyday words, vowel signs, ligatures, punctuation, digits and mixed English text.
- Fonts. The font download page serves the Bamini .ttf files that circulate in public archives, for personal and educational use — no explicit redistribution licence exists for Bamini, and that is stated on the page. Rights holders can request removal at any time.
Who runs this
Unicode Bamini is a one-person project, built as a tool-first site: the converter comes before the advertising, pages are static HTML, and the mapping data is documented enough that anyone can audit it.
Corrections, bug reports and questions are genuinely useful — a short email with the encoding and a sample of the text is usually enough to reproduce a problem. Write to service@unicodebamini.com or use the contact page.