Giter Site home page Giter Site logo

dev-iram / political-preparedness-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 445 KB

Political Preparedness Application developed as part of Udacity Nanodegree Android Kotlin Developer Course - Capstone Project. Allows for Users to search Upcoming Elections and Representatives based on their location. Uses Google Civic Information API.

Home Page: https://www.udacity.com/course/android-kotlin-developer-nanodegree--nd940

License: Other

Kotlin 100.00%
android animations api database databinding fragments glide google jetpack-library json kotlin livedata moshi motionlayout navigation retrofit room viewmodel civic-data

political-preparedness-app's Introduction

Political Preparedness App

politicalpreparedness

This is a Political Preparedness Application I created as per specifications for the Capstone Project as part of Udacity Nanodegree Android Kotlin Developer Course. Allows for Users to search Upcoming Elections and Representatives based on their location. It integrates Google Civic Information API, Data Binding, MVVM architecture, LiveData, Animations, MotionLayout, Retrofit, Moshi, Glide, Room, Navigation, SafeArgs

✦ Programming Language; Kotlin
✦ Minimum SDK; 26
✦ UI Layout; XML, MotionLayout
✦ Software Tools;
    ✧ Android Studio: IDE Used to create, compile and build application

NOTE: In order for this project to pull data, you will need to add your API Key to the project as a value in the CivicsHttpClient. You can generate an API Key from the Google Developers Console

Application Screenshots

politic politic1

Application Logo

Application Demo

political_preparedness_demo.mp4

Assignment Brief

In this project, students will build an application that provides civic data intended to provide educational opportunities to the U.S. electorate using data provided by the Google Civic Information API.
Students will use data from this API to allow users to track information on target representatives and voting initiatives where applicable.

Users will be able to target a specific location and retrieve the associated civic data, displaying it to the user, and providing a clean user experience for consumption.
Users will be able to save predefined locations for quick access and mark preferred representatives and policy outcomes. Where available, elections and voter information will also be provided, notifying the users on upcoming elections and providing access to associated information and saved data.

API - Integrate API so that the application can pull civic data for a provided address and store locally.
Preferred Candidates - Allow users to mark preferred candidates.
Register API - Register the API in the Google Developer Console and ensure the application can connect.
Expand API Functionality - Expand API functionality to include ballot data for provided locations and corresponding user selections.
Authentication and Data Storage - Enable user-level authentication and data storage. Expand location selection to use geo-location to generate address information.
UI - Refine and enhance UI.

Submission Feedback

1st Submission - Passed ✅

21st February 2024

Congrats! Your hard work has paid off!

You made all the required changes pointed out in the previous review and are now ready to move on to the next stage!

Keep up the good work as you continue your Nanodegree journey! Safe journey and bon voyage! 😄

political-preparedness-app's People

Contributors

dev-iram avatar

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.