Restaurant tracking and recommendation app
Nom Appetit is a social restaurant tracking and recommendation app designed to answer the age-old question: “So… where do you want to eat?”
Key Features:
-
Restaurant Tracking: Discover and explore a wide range of restaurants through an intuitive search feature. Save your favorite spots to a personal list, create reviews that include ratings and images, and share your experiences with the community by viewing others' reviews.
-
Smart Recommendations: At the heart of Nom Appetit is its intelligent recommendation system. Using item-item collaborative filtering trained on Yelp's dataset, the app offers personalized suggestions, helping you find the perfect place to dine based on your preferences.
With Nom Appetit, finding your next meal becomes a collaborative and enjoyable experience, connecting food lovers and simplifying the decision-making process.
To get a local copy up and running follow these simple example steps.
- Navigate to the
frontend
folder. - Install the required Node.js modules.
npm install
- Generate Google Cloud Platform and Firebase credentials, and place them inside a
.env
file. (Note: You will need to manually add the storageBucket value in firebaseConfig.js.) - Configure the server URL for your specific emulator device, and place the credentials inside a
.env
file.
EXPO_PUBLIC_GOOGLE_KEY = [GOOGLE KEY]
API_KEY = [FIREBASE]
AUTH_DOMAIN = [FIREBASE]
PROJECT_ID = [FIREBASE]
MESSAGING_SENDER_ID = [FIREBASE]
APP_ID = [FIREBASE]
MEASUREMENT_ID = [FIREBASE]
EXPO_PUBLIC_SERVER_URL = [URL]
- Start the application and follow the instructions in the terminal.
npx expo start
- Navigate to the
backend
folder. - Create a
secrets
folder in theservices
folder. - Generate & download Firebase Admin SDK private key.
- Generate Yelp Fusion API key and place it inside a
.env
file.
YELP_API = [YELP FUSION KEY]
- Place both the Firebase Admin SDK private key &
.env
file in thesecrets
directory. - Install the required Python modules.
pip install -r requirements.txt
- Run the server.
flask run
Contributions are what make the community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request