/fresh-cooking-assistant

An application for cooks who want to elevate their cooking with fresh seasonal ingredients.

Primary LanguageJavaScript

fresh-cooking-assistant

An application for cooks who want to elevate their cooking with fresh seasonal ingredients.

Technologies Used

  • React.js
  • React Router DOM
  • Webpack 4
  • Bootstrap 4
  • PHP
  • MySQL
  • HTML5
  • CSS3
  • AWS EC2

Live Site

Try the application live at fresh.vg

Features

  • Users can view a list of seasonal produce
  • Users can save produce to their Fresh! list when logged in
  • Users can view seasonal recipes
  • Users can save their favorites recipes when logged in
  • Users can save the ingredients of a recipe to their Fresh! list when logged in
  • Users can delete items from their Fresh! list as needed
  • Users can view farmer's markets near their current location
  • Users can create a calendar event to remember to go to a farmer's market
  • Users can be directed to a farmer's market through Google Maps

Preview

Desktop / Laptop / Ipad

desktop-preview

Mobile

mobile-preview

Development

System Requirements

  • NPM 6 or higher
  • MySQL 14.14 or higher
  • PHP 7.2 or higher

Getting Started

  1. Clone the repository

    git clone https://github.com/kitten-bites/fresh-cooking-assistant
    cd fresh-cooking-assistant
  2. Install all dependencies with NPM.

    npm install
  3. Create a MySQL database

    • Login to MySQL (defaults are root)
    mysql -u<username> -p<password>
    • Create a new database, remember the name you use
    CREATE DATABASE <name>;
  4. Create required credential files under the /server/api folder

    • Create a _config.php file following the format of _config.example.php
       'user' => 'username'
       'pass' => 'password'
       'host' => 'localhost'
       'database' => dbname
    • Create a _api-keys.php file
      • Get a Google Maps API key here
      • Get a Tasty! API key here
      • Fill in the fields as in _api-keys.example.php
  5. Import the database

    npm run db:import
  6. Start the project. Once started you can view the application by opening http://localhost:3000 in your browser

    npm run dev