|c. 8th–16th century|
|Languages||Old Balinese, Old Javanese, Old Sundanese, Old Malay, Sanskrit|
In the Philippines:
|Khmer, Cham, Old Mon, Grantha, Tamil|
|ISO 15924||Kawi (368), Kawi|
|The Brahmic script and its descendants|
The Kawi[a] or Old Javanese script is a Brahmic script found primarily in Java and used across much of Maritime Southeast Asia between the 8th century and the 16th century. The script is an abugida meaning that characters are read with an inherent vowel. Diacritics are used, either to suppress the vowel and represent a pure consonant, or to represent other vowels.
The Kawi script is related to the Nagari or old-Devanagari script in India. Also called the Prae-Nagari in Dutch publications after the classic work of F.D.K. Bosch on early Indonesian scripts, the early-Nagari form of script was primarily used in the Kawi script form to write southeast Asian Sanskrit and Old Javanese language in central and eastern Java. Kawi is the ancestor of traditional Indonesian scripts, such as Javanese and Balinese, as well as traditional Philippine scripts such as Luzon Kavi the ancient scripts of Laguna Copperplate Inscriptions 900 A.D. and The Baybayin that has surviving records from the 16th century. The strongest evidence of Nagari influence is found in the Sanur stone inscription found in South Bali, which consists of texts in two scripts: one in Early Nagari and the other in Early Kawi script. Further, the Sanur inscription overlaps into two languages – Sanskrit and Old Balinese. Of these, the Old Balinese language portion of the text is expressed in both Early Nagari and Early Kawi script. This inscription is likely from 914 CE, and its features are similar to the earliest forms of Kawi script found in the central and eastern regions of the Bali's neighboring island of Java.
According to de Casparis, the early Nagari-inspired Kawi script thrived for over three centuries between the 7th- and 10th-century, and after 910 CE, the later Kawi script emerged incorporating regional innovations and South Indian influence (which in itself is influenced in part by Brahmi-Nandinagari). The four stages of Kawi script evolution are 910–950 CE (east Javanese Kawi I), 1019-1042 (east Javanese Kawi II), 1100–1220 (east Javanese Kawi III), 1050–1220 (square script of the Kediri period).
The earliest known texts in Kawi date from the Singhasari kingdom in eastern Java. The more recent scripts were extant in the Majapahit kingdom, also in eastern Java, Bali, Borneo and Sumatra. The Kawi script has attracted scholarly interest both in terms of the history of language and script diffusion, as well as the possible routes for the migration of Buddhism and Hinduism to southeast Asian region because many of the major scripts of southeast Asia show South Indian Pallava script influence.
The modern Javanese script, state George Campbell and Christopher Moseley, emerged in part through the modification of the Kawi script over the medieval era. This modification occurred in part via secondary forms called pasangan in Javanese, and also from changes in shape. It also shows influence of the northern and western Javanese script forms based on the Pallava Grantha script found in Tamil Nadu as well as the Arabic and Roman script with changes in theo-political control of Java and nearby islands from the 14th- to 20th-century.
A well-known document written in Kawi is the Laguna Copperplate Inscription, found in 1989  in Laguna de Bay near Manila, Philippines. It has inscribed on it a date of Saka era 822, corresponding to May 10, 900 AD, and is written in Old Malay containing numerous loanwords from Sanskrit and a few non-Malay vocabulary elements whose origin is ambiguous between Old Javanese and Old Tagalog.
The "Butuan Ivory Seal" (The left hand image is the seal itself; the right hand image shows how a print from the seal would appear.)
The Kawi lettering reads "Butban". The three square seal style characters are BA, TA and NA; the leftward curl underneath BA is the /u/ vowel diacritic, changing the syllable to BU; the small heart-shaped character under TA is the subscript conjunct form of BA which also removes the default /a/ vowel from TA; the large curl to the upper right is the Kawi virama, which indicates the default /a/ vowel on NA is not pronounced. The three blocks of characters together read "[Bu][Tba][N-]. In both Balinese script and Javanese script, which are descended from Kawi, the word is spelled in a very similar pattern, using a similar /u/ diacritic, conjunct form for B, and virama.
The Kawi script has been accepted for a future version of the Unicode Standard based on a proposal by Aditya Bayu Perdana and Ilham Nurwansah. An earlier preliminary proposal was submitted to the Unicode Technical Committee by Anshuman Pandey in 2012.
The above is a comparison of the development of Devanagari characters in Kawi, Old Mon of the kingdom of Ava, and Thai script.