Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kabirnayeem99/v2_survey_android_app

Survey application built for V2 Limited.
https://github.com/kabirnayeem99/v2_survey_android_app

android-application kotlin-application survey-app

Last synced: 8 days ago
JSON representation

Survey application built for V2 Limited.

Awesome Lists containing this project

README

        

# V2 Survey App

A simple survey app made with all the Modern Android Development tools (Flow, Jetpack ViewModel,
Room, and Retrofit), and built with Modern Android App Architecture (MVVM + Uncle Bob's Clean Arch).
It is also well-tested by Unit-tests, and Instrumental tests.

## Features

- Get a survey that the user can answer.
- Can answer question and answer.
- Can also view previously answered questions.
- Material Design 3 and auto dark and light mode.

## Demo

Screenshot-20220825-005210
Screenshot-20220825-005226
Screenshot-20220825-005308
Screenshot-20220825-005332
Screenshot-20220825-005344
Screenshot-20220825-005358

## Tech Stack

- **Android SDK**, for building app for android platform.
- **Kotlin Language**
- **Kotlin Coroutines**, for multithreading
- **Retrofit and GSON**, to handle network request and network response.
- **Room**, for saving data locally.
- **Dagger-Hilt**, for dependency injection.
- **Timber**, for better and improved logging.
- **Easy Permission**, for handling permission.
- **JUnit and MockK**, for unit testing.
- **Espresso**, for instrumental and UI testing.

## Run Locally

Clone the project

```bash
git clone https://github.com/kabirnayeem99/v2_survey_android_app.git
```

Go to the project directory

```bash
cd v2_survey_android_app
```

To make sure everything is working, first run the unit tests. Invoke gradle test:

```bash
gradlew test
```

And then invoke instrumental test:

```bash
gradlew connectedAndroidTest
```

To build a debug APK, open a command line and navigate to the root of your project directory. To
initiate a debug build, invoke the assembleDebug task:

```bash
gradlew assembleDebug
```

This creates an APK named v2_survey_android_app-debug.apk in
v2_survey_android_app/build/outputs/apk/. The file is already signed with the debug key and aligned
with zipalign, so you can immediately install it on a device.

Or to build the APK and immediately install it on a running emulator or connected device, instead
invoke installDebug

```bash
gradlew installDebug
```

## Authors

- [@kabirnayeem99](https://www.linkedin.com/in/kabirnayeem99/)