Complete App from Scratch: Kotlin Part 1 — Android Jetpack Components, Material Design, Room Database and MVVM Architecture

Yash Prakash
This Code
Published in
3 min readAug 29, 2020
Photo by Jonathan Kemper on Unsplash

The three Ws for the app that I always try to begin with will be described in this first part of the series, which will provide you with an idea of exactly what we’ll be trying to build in the later articles.

Welcome to a new series of making a complete, production ready Android app in Kotlin from scratch.

The new app that we’re going to be making is not a TODO app, so you can breathe a sigh of relief right now because I’m tired of reading one of those tutorials too. :)

We are gonna start with the very idea behind the app, one that made me think about it and finally delve into making the app itself.

And as you might have guessed by now, this idea rests upon the three Ws mentioned in the title: The Who, The What and The Why for the App.

Let’s start with the What.

What will be this app called: This app will be named Remember. It will be a simple vocabulary builder + manager app.

It will let the users do these things:

1. Store a new word to learn: its name and its meaning

2. Store the way he or she pronounces the word

3. Let the users to hear back the audio and edit the word.

Sounds simple enough? Yeah, it is. But fear not, this app will contain many concepts of modern app development all encapsulated into our codebase.

Getting back to our idea: The Second W: The Why

This app is supposed to act as some sort of vocabulary manager app for the people. Users will store the new words they learn day to day, (maybe with a reminder of some kind also built into it somewhere?) and then come back to it to see and revise them from time to time.

Alright. That’s two Ws done.

What about the third? The Who

This W explains what kind of users our app will get once its launched. Yes, this one helps us try to brainstorm things like what kind of user age group our app will attract.

I’ll say, as an answer, Remember will most certainly be popular among the adolescents — young adult and adults.

Sounds good?

Okay. Let’s do a quite mind-map of the idea of Remember then.

This will be our typical path of making the app as we move forward with coding.

Ah! As you can see, I’ve added a few extra things too to our list of things to build: The Settings Screen, which is an essential for any app, and some kind of list and grid views for displaying words!

We’ll see how to do all of that as we move forward!

Okay, in the next part, I’ll begin with designing the main screens for the app. A bit of UI/UX is always necessary in advance to make a better app, so we’ll cover that soon.

Do you want to get one free, clean email from me every week or two weeks containing the best of my curated articles and tutorials that I publish? Join my Codecast!

Connect with me on Twitter and LinkedIn!

--

--

Yash Prakash
This Code

Software engineer → Solopreneur ⦿ Scaling my own 1-person business model ⦿ Writing for busy founders and business owners.