I grew up speaking Aklanon, but I’m far from fluent. Whenever my friends and I chatted in it, I’d run into a word I didn’t know, or we’d disagree about what one meant. I’d search for it and usually find nothing. If I was lucky, I’d ask my parents.
That’s how little digital infrastructure existed for my own language. So I built Aklish, a web app where people contribute and discover Aklanon-English translations. It’s really an attempt to build the pieces a language needs to exist online: a searchable dictionary, quality control through voting, a spell checker, and learning tools that encourage people to keep using it.
This project is no longer actively developed because I’m now building Kulasisi, which expands the same idea to support many Philippine languages instead of just Aklanon.
Why I built it
Aklish started as my Senior High School Research Capstone Project. But the motivation came earlier. I wanted a place to reliably look up Aklanon words that could keep growing as more people contributed. So instead of a static dictionary, I built a crowdsourced one, where users submit translations, vote on existing ones, and improve it together.
Building the dictionary
The biggest challenge wasn’t writing code, it was getting the words. There wasn’t a digital Aklanon dictionary to import, so I manually encoded more than 5,000 entries from an old printed dictionary. Modern OCR might make that easier today, but the scanned pages were messy enough that manual encoding was the only realistic option at the time. Those entries became the foundation everything else was built on.


Letting the community improve it
Language changes and words carry multiple meanings depending on context, so Aklish lets users submit translations from either language, vote them up or down, and build reputation through their contributions. The reputation system, inspired by Stack Overflow, surfaces better translations while rewarding people who consistently contribute good entries.




Helping people contribute better translations
One feature I’m particularly proud of is the spell checker, which catches obvious mistakes before they become part of the dictionary. It uses SymSpellPy for spelling suggestions together with LemmInflect and AklStemmer to recognize inflected English and Aklanon words.
Building it led to another project entirely. Dictionary lookups weren’t enough because inflected Aklanon words often don’t appear in dictionaries, and that problem became AklStemmer.
Making it usable


Since the project depended on community participation, I wanted it to feel approachable rather than like a research tool. Users browse and search the dictionary, create accounts, and contribute translations comfortably on desktop or mobile. Looking back, it’s funny that I built the interface almost entirely with Django templates and Bootstrap, before I’d learned React or any modern frontend framework.


Encouraging people to learn
I also added a Wordle-inspired game and a synonym-antonym matching game, on the idea that repeated exposure to vocabulary would help people get more familiar with Aklanon while making the platform feel less like a dictionary.


What I learned
Aklish taught me how much work goes into a real web application. Building almost every part myself taught me more about full-stack development.
It also changed how I think about community platforms. I expected people to be excited to contribute translations. Instead, many spent more time playing the games than adding words. Building a community is harder than building the software, people need reasons to come back, and those reasons aren’t always the ones you expect.
It also became the foundation for Kulasisi, where I’m now applying the same ideas to many Philippine languages instead of just one.
