Skip to content

A Parking Example App using ViewModel, ViewBinding, LiveData and Navigation.

License

Notifications You must be signed in to change notification settings

JunkieLabs/junkie-parking-android-app

Repository files navigation


API

Get it on Google Play


Junkie Parking Android App

A Simple Parking Model with simplistic design. This repo is made in Kotlin Language with Firebase authentication and connected with Rest api.

This project contains all of the latest technologies, from design to developemnt, and common features needed to build an release ready android app.


Table of contents


Getting Started:

Initial Setup

  • Step 1: Create a Firebase Project.

  • Step 2: Add package in the firebase project

  • Step 3: Enable google auth, this will be needed for authorizing App.

  • Step 4: Download the google-services.json from the firebase and add inside the app folder.

  • Step 5: make sure your firebase project is in blaze.

for more detail visit Firebase Project setup


For Backend

You have to create backend for this project. Or Run our backend from this repo.

configure app/build.gradle file

  • change API_URL value to your server api url


Features:

These are some of the important features implemented in this starter!


  • View Model Structure
    • All functional logics are pared inside Viewmodel and Fragment/Activity used only for Naviagtion logics.

  • Coroutines Events
    • Used in place of asynchronous programming .
    • Used in Cases when events/callback is needed From ViewModel to Activity/Fragment. For Detail, see here

  • Rest Api in Retrofit
    • Retrofit library for HTTP request.
    • Moshi Converter used to parse JSON in Kotlin.
    • For more details , see here


Components:

These are some of the important components in this app!

  • Qr Scanner
  • Motion Layout Animations
  • Ticket

Qr Scanner

ZXing ("zebra crossing") an open-source library is used for Qr Code Scanning.


Motion Layout Animations

MotionLayout is Extended Class of ConstraintLayout. Used for making animation inside widgets.

For examples visit: Motion Layout Examples


Ticket

TicketView is Used to Create Ticket Dialogs



FAQ:

Does this project require backend Api?

Yes! This App won't run without backend. You can create this on any platform like nodejs, python, spring etc.

We have open sourced backend code in nodejs. Please see For Backend

Special Thanks:

A special thanks to other 3rd party libraries and resource, which we have used in this project.


Further help

This project is an open-source initiative by Junkie Labs.

For any questions or suggestions send a mail to junkielabs.dev@gmail.com or chat with the core-team on gitter.

Gitter



License

MIT License.