Case Study: Nyaaya – India’s Laws Explained

Nyaaya is a non-profit venture with a mission statement to demystify indian laws.  Their team approached us with a crystal clear problem statement during a hackathon. They wanted to make Indian law more understandable and accessible to the common man.


We set out to design and develop a mobile application as a solution to their problem. Mobile devices have truly become a commodity today and almost every person has access to it.

Here is how we approached the user experience and development of the app.



Classification and Categorization

We found that there is no general classification of laws except civil and criminal courts. By general classification what we mean is a categorization that the common people can relate to. Nyaaya has a good database of law explainers (question and answer format) around laws that a common man would most likely be interested in.

We took these explainers and classified them into three broader categories to start with. Traffic rules, Harassment or Violence and Fraud. Harassment or Violence includes laws around domestic violence, sexual harassment, child exploitation, dowry related laws, etc. Fraud includes laws around online bank fraud, cheque bounce and other fraud. More categories can of course be added to accommodate other laws.

Guided Navigation

As the basic purpose of the application is to help users navigate the law, it made sense to use guided navigation i.e. ask the user what he wants and show him options to navigate further. We thought this would also be the best approach to leverage the law explainers which were built in a question and answer format.

Conversational Interface

Thinking from a user’s perspective, quick lookups about a subject is the#1 use case for the app, for e.g. a user may want to quickly look up a law around a specific traffic violation. Perhaps he may want to read in greater detail once he is has quickly found what he was looking for.

We leveraged the speech to text functionality of the mobile device to allow the users to do this quick lookups. The user fires up the app and taps a button before asking a question. The user speaks up the question, for e.g. ‘What is the fine for riding without a helmet?’ With some basic NLP (Natural Language Processing) algorithms, we identify what the user is asking and provide him with a one line answer. The user also has an option to read the law in greater details by clicking ‘Read more’.

We also skip the city selection for the user as we detect which city the user is currently in. Of course, the user has an option to manually go and select another city should he be interested to look up the law for a particular city.

Key information visible at first glance

Laws are usually drafted in a legal jargon which makes it difficult for the common man to make sense of. A quick lookup is only helpful if the user can find the exact piece of information once he navigates to a particular law. We take the key information related to a particular law and highlight it. The idea is to have the key information visible at first glance. For example, for traffic laws, the fines for the specific offences are highlighted.

Multilingual – Support for popular Indian languages


One of the most important pillars of our approach to solve this problem was ‘Language’. India is the country of multiple languages, each state having it’s own primary language. It became very important for the information served through the app to be available in multiple languages. We added an option to allow the user to choose the language of his choice. We wrote a small backend app, to translate content to the selected language using Google translate APIs. In addition to English, we tested it with four indian languages viz. Hindi, Marathi, Gujarati and Kannada. The translation came out pretty good – we did a test with some native speakers to verify the accuracy of translations.

As we supported multiple languages on the app, it also became important to support the quick lookup with multiple languages. We again wrote a micro app on the backend to process quick lookups in languages other than english. With this, we were able to support  voice queries in four indian languages as well.

If you want our team to help you find solutions that would scale for the interesting problem/s that you’ve decided to solve, please get in touch and we’ll be glad to discuss potential collaboration.