lukehalley / hillfort

A firebase enabled Android application built with Kotlin for my 4th Year, Semester 1 "Mobile App Dev" module for our first assignment.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Markdownify
Hillfort

A firebase enabled Android application built with Kotlin for my 4th Year, Semester 1 "Mobile App Dev" module for our first assignment.

Demo

Full Video Demo Of The App I Recorded For My Submission Can Be Seen Here:

http://bit.ly/HillfortAppDemo

Screenshots

Setup

First clone the repo at the master branch down to your machine.

git clone https://github.com/lukehalley/hillfort.git

Then open the project in Android Studio

navigate to the file located:

Hillfort/src/main/res/values/keys.xml

and find the following lines:

<?xml version="1.0" encoding="utf-8"?> <resources> <string name="mapsKey">[IN YOUR KEY HERE]</string> </resources>

replace [IN YOUR KEY HERE] with your Google Maps API.

If you do not know how to get a Google Maps API here is a tutorial by Google

Finally connect your device or start an emulator and run the app! 😃

Key Features

Hillfort Alpha & 1.0

  • Splashscreen
  • Persitance for both Hillforts and Users using JSON
  • Register and Login
    • Using a "User" module with the details of user strored locally on the device with a JSON file.
    • Password requires a double entry (to ensure change is correct)
    • Empty field checking
  • Material Design
    • Flat and bright colours
  • Modern UI
    • Navigation drawer, Floating Action Button (FAB), Flat Icons
  • CRUD Features
    • Add a Hillfort
    • View/Read a Hillfort
    • Edit/Update a Hillfort
    • Delete Hillfort
  • Multiple Data Fields
    • Title
    • Description
    • Additional Notes
    • Visted (Switch/Boolean)
    • Images (Up to 4 - can be loaded from devices gallery or taken by camera)
    • Location with readable address (Google Maps with Geocoder)
    • Empty field checking
  • User Settings
    • Edit Email
    • Edit Password (with double entry to ensure change is correct)
    • Empty field checking
  • Pop Up Windows
    • Used in multiple areas such as logging out (are you sure you want to logout?) and when deleting a hillfort (are you sure you want to delete this hillfort?) etc...

Hillfort 2.0

  • New Features In 2.0
    • Firebase Authentication
    • Firebase Hillfort Data Using Realtime Database - Create, Read, Update Delete
    • Firebase Database - used to store all four images
    • Map View Of All Hillforts
    • Rate Hillfort
    • Mark As Favourite
    • Current Location Detection
    • Share Hillfort With Other Apps
    • Landscape App Wide Support
    • Bottom Nav
    • Navigation Drawer

About

A firebase enabled Android application built with Kotlin for my 4th Year, Semester 1 "Mobile App Dev" module for our first assignment.


Languages

Language:Kotlin 100.0%