Skip to content

Shoe Store Inventory Application developed as part of Udacity Nanodegree Android Kotlin Developer Course. Allows for User to create a list of Shoes to be stored in an inventory list displayed.

Notifications You must be signed in to change notification settings

dev-iram/Shoe-Inventory-App

Repository files navigation

Shoe Store Inventory

shoestoreinventory

This is a Shoe Store Inventory Application I created as per specifications in Project 1 as part of Udacity Nanodegree Android Kotlin Developer Course.

✦ Programming Language; Kotlin
✦ Minimum SDK; 34
✦ UI Layout; XML
✦ Software Tools;
    ✧ Android Studio: IDE Used to create, compile and build application

Application Screenshots

1 (2) 2 (2)

Application Logo

Application Demo

demo.mp4

Assignment Brief

In this project, students will apply their skills in building layouts and navigation files by building a Shoe Store app. This project will consist of five screens:

✦ Login Screen
✦ Welcome Onboarding Screen
✦ Instructions Screen
✦ Shoe List Screen
✦ Shoe List Screen

While the login and onboarding pages will not do anything, the user will need to save the login state so that the login and onboarding pages do not show again.

The shoe listing page will show the list of shoes and show a button for adding a new shoe, while the detail page will be for adding a shoe entry. All entries will be saved only as long as the app is running.

Purpose

✦ Design an Android Application User Interface
✦ Implement navigation across different screens
✦ Use ViewModel and LiveData lifecycle classes in an Android app
✦ Implement Single Activity architecture
✦ Write error-free code
✦ Create layouts using the correct ViewGroups and Views in an Android app
✦ Apply Databinding in Layouts to show the correct data to users in multiple layouts
✦ Create a multi-screened Android Application using Android widgets.
✦ List screen uses ScrollView and LinearLayout for showing a list of items and one Floating Action button for going to the detail screen
✦ Create a detail screen that shows two columns of labels and edit views to enter in a new item.
✦ Activity and Fragment Lifecycle

Functionality

The functionality of this application consists of:

Login Screen – Consists of Email + Password fields - labels and input. User will be able to input an email and/or password. Buttons to create a new login and log in with an existing account. Clicking either button should navigate to the Welcome Screen.

Welcome Screen – This is a simple welcome screen. Features 2 TextViews. There is a navigation button to proceed to the next screen.

Instructions Screen – This screen consists of text guiding the user instructions regarding the use of the application. There is also a button to proceed to the next screen.

Shoe List Screen – Features a ConstraintLayout, with a ScrollView and LinearLayout. It features a FloatingActionButton to allow for navigation to the following screen which will allow the user to add a new shoe entry to the list on this screen.

Shoe Detail Screen – This screen consists of a ConstraintLayout with labels and inputs for each of the entries - Shoe Name, Company/Brand, Description and Size. There is a button that allows for the new item to be added to the inventory list, or another button to cancel which will wipe all input and return to the previous screen.

This application uses animations for changing screen - when proceeding to the next screen, it will swipe right.

Submission Feedback

2nd Submission - Passed ✅

21st January 2024

WELL DONE, You have successfully fixed all the issues
You completed this project flawlessly.
I hope you keep your spirits up and keep working like this.
We are looking forward to more of your projects

1st Submission - Failed ❌

20th January 2024

Your code looks well-structured and neat. You're clearly writing a Kotlin-like code, using all its benefits.
You kept the app design simple but made it very pleasant.  
There is a minor issue that you need to fix before finishing this project successfully  
All the layouts are missing code comments to justify the usage of Linear/ConstraintLayout  
I have added the feedback to relevant project files as well as to the sections of this  
feedback that will help you to fix the issues and improve the codebase  
All the BEST for the next submission 😊 Happy Coding 😊

About

Shoe Store Inventory Application developed as part of Udacity Nanodegree Android Kotlin Developer Course. Allows for User to create a list of Shoes to be stored in an inventory list displayed.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages