Giter VIP home page Giter VIP logo

fantastic-octo-guide's Introduction

Little Lemon

Android project for Android App Capstone (Coursera, Meta). The course is a part of Meta Android Developer Professional Certificate.

Kotlin, Jetpack Compose, Ktor, Room.

Features

  1. Data Fetching and Storage:

    • Fetches and stores a list of menu items in a Room database for persistent data management.
  2. Onboarding and Registration:

    • Features an onboarding screen that guides users through the registration process. User data is stored in SharedPreferences.
  3. Home Screen:

    • Displays comprehensive information about the service.
    • Provides a dynamic list of menu items, allowing users to filter the list by search phrases, categories, or both.
  4. Profile Management:

    • Offers a profile screen where users can view own information provided during onboarding.
    • Includes a logout function.

Building blocks

This project is built using a range of modern technologies and libraries:

  • Jetpack Compose - Android’s modern toolkit for building native UI. It simplifies and accelerates UI development on Android with less code, powerful tools, and intuitive Kotlin APIs.
  • Ktor - An asynchronous framework for creating microservices, web applications, and more. Used for handling server-side logic and networking.
  • Room - An abstraction layer over SQLite used for database access while utilizing the full power of SQLite.
  • Coil - An image loading library for Android backed by Kotlin Coroutines. It simplifies fetching, decoding, and displaying images in the application.

Wireframe

The wireframe could be found in design/ folder of the project. Wireframe has been built in Figma. Wireframe for the main screen

Further improvements

While the project currently meets the course's requirements, there are several enhancements that could be considered for future development. These enhancements, though not essential for the project's current scope, would be valuable if the project were to be expanded.

  • Localization
  • Themes support
  • Network layer update
    • Path isolation
    • API versioning
    • Endpoints implementation
  • Migration to clean architecture
    • ViewModels for each screen
    • Repositories
    • Use cases
  • Unit and Integration Testing

Special thanks

Working soundtrack for tasks from week 1 and weeks 2 & 3.

fantastic-octo-guide's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.