Skip to content

Android application that utilizes urban dictionary API to lookup word definitions

Notifications You must be signed in to change notification settings

kursivee/urban-dictionary-android

Repository files navigation

Urban Dictionary App

Utilizes urban dictionary API to lookup word definitions

Flow

Overview

Architecture

This project follows Clean Architecture and MVVM

API Calls

Using the following APIs I found to use instead of https://rapidapi.com/community/api/urban-dictionary. There was more I wanted to do like pagination but didn't have time.

Screens

  • Results Screen - Show results of search term. If on initial screen, show list of random results.

  • Search Screen - Allow users to input a search term. Hits autocomplete API to get a list of potential search terms.

Persistence

Only calls to the https://api.urbandictionary.com/v0/define?term={term} endpoint are cached. This allows you to lookup previous search terms even when offline. There is no expiry time in this implementation.

Technology

Presentation

  • View Binding - generates binding classes which hold reference to XML id'd elements
  • List Adapter - Convenience wrapper that provides default behavior for item access and counting
  • Recycler View - Displays lists of elements