Giter VIP home page Giter VIP logo

thumbtack's Introduction

Thumbtack

Thumbtack is an Android app built with React Native that lets you records GPS coordinates at specific locations for places you have been and write notes on the locations. Coordinates can be retrieved automatically or manually selected.

Designed and developed by austins, Mike-Diaz, angelicrf, and Silicob.

Refer to the LICENSE file for use, modification, and distribution terms and conditions.

thumbtack's People

Contributors

angelicrf avatar austins avatar mike-diaz avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

thumbtack's Issues

Create CRC

Class Responsibility Collaborator (CRC) documentation.

Combine implementations of map, DB, and UI together

Below text is from @Mike-Diaz's draft PR, moved to this issue to clearer show the progress:

Implement react-maps, and react-native-local-mongodb into components Locations and NewLocation. Refactor Home components as Map to output a map component. Ensure locations are being saved to the database and the database persists on app reload or app closure. Ensure the map is being monitored for onPress events in order to pull coordinates and save them in NewLocation.js component.

To-do for this issue from this point:

  • Find a way for the marker to show up when the onPress event is called in the NewLocations component.
  • Figure out how to pass the values of what is being input in the name and notes sections of the LocationFormInputs component in order to save to the db.
  • Enable "Get My Coordinates" in order to pull current location if user wishes to save their own location instead of a picked location on the map inside the NewLocation component.
  • Link ApproximateAddress component output (ie. the address) to NewLocation component so that it can actually be saved and not just displayed.
  • Enable region to set to the correct marker selected.
  • Enable the map contained within the Locations component to update and display new markers after a marker is added from NewLocation component.
  • Add a card in the Locations component which re-renders when a marker is selected with the appropriate information and move the button to edit that marker to the card.
  • Finish implementing the EditLocations component in order to update the db correctly.

Note: This issue is incomplete. Please do not merge feat/implement-map-db-ui with master until all changes are made.

Locations Component showing multiple markers mapped from locations array inside DB: Placeholder only.
Locations

Map shown in NewLocation component. Currently not pulling coordinates from map:
NewLocation

Approximate Address

See if it would be possible to implement the approximate address feature using the Google Maps Geocoding API. https://developers.google.com/maps/documentation/geocoding/

Basically, take the longitude and latitude we retrieved from the GPS to get an (approximate) address from Google.

If this is too much work or not realistic, we can forego the idea of the Approximate Address.

Look over: test and make sure everything works and looks good

When we have finished implementing our features and are in the last week of the project, make sure everything works and looks good.

Make sure all main features and views (pages) work on Android. Good things to look at:

  • UI looks good
  • Locations
  • New Location
  • Edit Location
  • Map features
  • Saving to DB
  • Fix any grammatical issues and typos

Implement Global State for App

Using react-native hooks, create a global state object that can be accessed and modified from all other components using dispatch, useState, and useComponentState methods.

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.