CoffeeCompanion is your go-to mobile app for finding nearby coffee shops!
- Nearby coffee shops on map: Fetches coffee shops near your location from the Foursquare Places API, showing them on the map as points of interest.
- Create an account: Sign up for free to unlock the benefits of CoffeeCompanion.
- Review your favorite coffee shops: Share your thoughts and reviews of your favorite coffee shops for others to see and interact with.
- Add coffee shops to favorites: Save coffee shops to your personal favorites list for quick access.
- Clone the repository:
git clone https://github.com/pr0fix/CoffeeCompanion
- Navigate to the project directory:
cd CoffeeCompanion - Install dependencies:
npm install
- Set up environment variables:
Create a
.envfile in the root directory by following the.env.templatewhich contains the following:FIREBASE_API_KEY=<your_firebase_api_key> FIREBASE_AUTH_DOMAIN=<your_firebase_auth_domain> FIREBASE_PROJECT_ID=<your_firebase_project_id> FIREBASE_STORAGE_BUCKET=<your_firebase_storage_bucket> FIREBASE_MESSAGING_SENDER_ID=<your_firebase_sender_id> FIREBASE_APP_ID=<your_firebase_app_id> FIREBASE_DB_URL=<your_firebase_realtime_db_url> FOURSQUARE_API_KEY=<your_foursquare_api_key> - Start the development server:
npm start
- If you are using a mobile device with Expo, make sure you are connected to the same network as your development device.
- If
npm startdoesn't work, try running:npm start --tunnel
- Currently the app is a frontend only implementation where it handles everything from fetching data and showing it by itself without a backend. Backend will be developed later on.
Once the development server is running, you can scan the QR code displayed in the terminal or Expo Dev Tools to launch the app on your mobile device.
CoffeeCompanion is built using the following technologies:
-
Frontend:
- React Native
- Expo
- Expo Image Picker
-
Location & Mapping:
- Expo Location
- Foursquare Places API
- React Native Maps
- React Native Map Clustering
-
Authentication & Storage:
- Firebase
- Async Storage
-
Forms & Validation:
- Formik
- Yup
-
UI Components & Navigation:
- React Native Gesture Handler
- React Native Reanimated
- React Native Bottom Sheet
- React Native Vector Icons
- React Native Collapsible
- React Navigation
-
Networking:
- Axios
-
Configuration:
- React Native Dotenv
These technologies work together to create a seamless and efficient user experience in finding nearby coffee shops.







