A TODO list app with location reminders that remind the user to do something when the user is at a specific location

Overview

Project Title

Location Reminder

Getting Started

A TODO list app with location reminders that remind the user to do something when the user is at a specific location. The app will require the user to create an account and login to set and access reminders.

Installation

To get the project running on your local machine, you need to follow these steps:

Step 1: Clone the repo

Use this to clone it to your local machine:

git clone https://github.com/Raghav-Saboo/UdacityLocationReminder.git

Step 2: Run the project and check that it compiles correctly

Open the project in Android Studio and click the Run ‘app’ button, check that it runs correctly and you can see the app in your device or emulator.

Testing

Explain the steps needed to run any automated tests

Break Down Tests

Explain what each test does and why

Examples here

Project Instructions

  • Project Instructions
  • Create a Login screen to ask users to login using an email address or a Google account. Upon successful login, navigate the user to the Reminders screen. If there is no account, the app should navigate to a Register screen.
  • Create a Register screen to allow a user to register using an email address or a Google account.
  • Create a screen that displays the reminders retrieved from local storage. If there are no reminders, display a "No Data" indicator. If there are any errors, display an error message.
  • Create a screen that shows a map with the user's current location and asks the user to select a point of interest to create a reminder.
  • Create a screen to add a reminder when a user reaches the selected location. Each reminder should include
    • title
    • description
    • selected location
  • Reminder data should be saved to local storage.
  • For each reminder, create a geofencing request in the background that fires up a notification when the user enters the geofencing area.
  • Provide testing for the ViewModels, Coroutines and LiveData objects.
  • Create a FakeDataSource to replace the Data Layer and test the app in isolation.
  • Use Espresso and Mockito to test each screen of the app:
  • Test DAO (Data Access Object) and Repository classes.
  • Add testing for the error messages.
  • Add End-To-End testing for the Fragments navigation.
You might also like...
ToDo App based on Modern Android Application tech-stacks and MVVM architecture.
ToDo App based on Modern Android Application tech-stacks and MVVM architecture.

ToDo App Task Management App based on Modern Android Application tech-stacks and MVVM architecture. Techs Used 💻 Kotlin - First class and official pr

A simple ToDo Task Manager App made in Kotlin using Room DataBase.
A simple ToDo Task Manager App made in Kotlin using Room DataBase.

ToDo List App 🌟 About A simple To-Do List Management App that helps you get things done. Built with Kotlin, it helps the user to add their task. User

TODO API Client Kata for Kotlin Developers. The main goal is to practice integration testing using MockWebServer
TODO API Client Kata for Kotlin Developers. The main goal is to practice integration testing using MockWebServer

KataTODOApiClient for Kotlin We are here to practice integration testsing using HTTP stubbing. We are going to use MockWebServer to simulate a HTTP se

This is a simple Rest Api for todo application

This is a simple Rest Api for todo application , where users do signup, login and add their respective todos. So this api is fully based on Ktor framework.

Repositorio com a finalidade de por em pratica todo o conhecimento das aulas do curso Kotlin e Spring do Zero ao avançado da udemy

kotlin-spring Repositorio com a finalidade de por em pratica todo o conhecimento das aulas do curso Kotlin e Spring do Zero ao avançado da udemy. Obse

Resoluções a problemas e desafios comuns da plataforma Android, que todo desenvolvedor profissional cedo ou tarde irá enfrentar e deveria ter visto, ao menos, uma única vez na vida!
Resoluções a problemas e desafios comuns da plataforma Android, que todo desenvolvedor profissional cedo ou tarde irá enfrentar e deveria ter visto, ao menos, uma única vez na vida!

Resoluções a problemas e desafios comuns da plataforma Android, que todo desenvolvedor profissional cedo ou tarde irá enfrentar e deveria ter visto, ao menos, uma única vez na vida!

App with plant list 🌱 , the app reminds you when to water 💦 your best plant at a certain time.
App with plant list 🌱 , the app reminds you when to water 💦 your best plant at a certain time.

Plant Life App with plant list 🌱 , the app reminds you when to water 💦 your best plant at a certain time.. Table of Contents Introduction Features U

Kotlin app that shows a list of characters using the api SWAPI
Kotlin app that shows a list of characters using the api SWAPI

StarWarsCharacters Kotlin app that shows a list of characters using the api SWAPI (https://swapi.dev) This is a clean architecture app example built w

An Android app consuming Pixabay API to search and display list of images, built with MVVM pattern
An Android app consuming Pixabay API to search and display list of images, built with MVVM pattern

Images An Android app consuming Pixabay API to search and display list of images, built with MVVM pattern as well as Architecture Components. Min Api

Owner
Raghav Saboo
Raghav Saboo
To-do-List - Creating a Reminders and Tasks app with Kotlin

To do List ?? App de Lembretes e Tarefas com Kotlin Telas do App Tecnologias Kot

Alini Rodrigues Ferreira 4 May 18, 2022
📕 Today, I learned Something

TIL(Today I Learned) Wiki 프로젝트 구성 멀티 모듈 방식 기본적인 buildSrc, data, domain, model 로 구성되어 있으며 필요에 따라 모듈이 추가 될 수 있습니다. features 모듈에 공부한 '기능' 에 대해 모듈들이 있습니다.

Sieun Ju 1 Jan 10, 2022
myMaps displays a list of maps, each of which show user-defined markers with a title, description, and location.

My Maps Trevor Carrell myMaps displays a list of maps, each of which show user-defined markers with a title, description, and location. The user can a

null 0 Nov 1, 2021
Simple Todo list API using Spring-Boot, Webflux, Kotlin, Coroutines, & PostgreSQL

Simple Todo list API using Spring-Boot, Webflux, Kotlin, Coroutines, & PostgreSQL

Sami Eljabali 9 Jul 26, 2022
AppToDo is a simple Android project that performs the basic database CRUD operations that creates a todo task list

AppToDo is a simple Android project that performs the basic database CRUD operations that creates a todo task list

Rafiul Hye 1 Mar 13, 2022
Taskify is a mobile application used to create and schedule tasks in your TODO list

Taskify is a mobile application used to create and schedule tasks in your TODO list. It is built upon the new Maaterial 3 UI components with the MVVM pattern and the latest Jetpack components.

Robert Muriithi 2 Jun 25, 2022
To-Do-List - Create a To Do List-style App from scratch and drive the entire development process using Kotlin

To-Do-List! Crie um App no estilo "To Do List" do zero e conduza todo o processo

River Diniz 0 Feb 14, 2022
Map-vs-list-comparator - The project compares the time needed to find a given element in a map vs the time needed to find a given element in a list.

Map vs List Comparator The project compares the time needed to find a given element in a map vs the time needed to find a given element in a list. To

null 0 Jan 4, 2022
A specific format represent file directory in Json

CascadeJson.kt A specific format represent file directory in Json Provide a function for convert to map or json string in Kotlin Usage Download zip fi

CWKSC 1 Feb 22, 2022
Counterpart of onTouchEvent for Jetpack Compose and transform gesture with specific number of pointers

Counterpart of onTouchEvent for Jetpack Compose and transform gestures notify when last pointer is up number of pointer that are down or list of pointers that can be used to get details of events when gesture is on

Smart Tool Factory 19 Nov 19, 2022