About This Project
This project extends the web version because I believe that few travelers would want to use a laptop to find someone on Pinner. A mobile application offers better performance. I used React Native to render components for both Android and iOS, and employed Django, Graphene, and Firebase for live chat functionality. Pinner-App records users' locations and recommends others who have visited the same city before.
Technical Sheet
Django
Graphene
React-Native
Apollo
Firebase
TypeScript
Styled-Components
Sentry
GoogleMapAPI
Heroku
Alts
I compared several designs to find the best UI and balance. I focused on performance to reduce task completion time and enhance user satisfaction.

Autocomplete City Name
It’s nearly impossible to gather all city data worldwide, and there is no existing library for auto-completion of city names except for Google Place API.


Create City Model
When a user selects a city, the server creates a new city model if it doesn't already exist in the database. I used the Unsplash API for city images, RawSQL to find nearby cities, the Slack API for notifications, and the Google Place API for unique city IDs.




#EDEDED
#E2E2E2
#318CEE
#1E1E1E
#161616




Long Term Gains
I aimed to write the code in a functional style using React Hooks. Most of the queries were similar to those in Pinner-Web, making data fetching straightforward. I compared functional style with class style (since you can't use Hooks inside a class component). I need more practice with push notifications in React Native. I aimed to complete the project in less than 3 months.