Skip to content

Your ultimate personal recipe curation app - "Recipeo". Fullstack app built with Java on AWS Lambdas with DynamoDB, and HTML/CSS/Javascript

Notifications You must be signed in to change notification settings

lafleurss/recipeo

Repository files navigation


Logo

Recipeo

Introducing the ultimate personal recipe curation app - Recipeo!

Report Bug · Request Feature

About The Project

Introducing the ultimate personal recipe curation app - "Recipeo"! This app allows you to easily add, edit, and organize your favorite recipes, whether it's a recipe passed down from your grandma or something you found on your favorite blog or on social media. With a user-friendly interface, you can easily search through your recipes through their recipe names or tags, edit the recipe to include your own recipe enhancements or delete recipes that you no longer need. You can also organize your recipes by categories like Recently Used, Favorites, or your own custom Category to organize your recipes. Say goodbye to cluttered recipe cards or lost recipe tweaks and hello to a streamlined, organized recipe collection with Recipeo.

Product Name Screen Shot

Features

  • Users can create and save recipes
  • Users can optionally assign a category to a recipe when creating one
  • Users can edit a recipe to note recipe adjustments
  • Users can see top 10 recipes in the Recent category (recently created/updated)
  • Users can see all their favorite recipes in the Favorites Category
  • Users can see ALL their recipes unfiltered
  • Users can create custom Categories
  • Users can view all their custom Categories
  • Users can delete a recipe when it is no longer needed
  • Users can search for recipes via tags or recipe names

(back to top)

Design

Here's the design document that details the technical design and architecture decisions.

Built With

Architecture

(back to top)

Getting Started

The following instructions will guide you on setting up and running the project locally.

Prerequisites and Installation

  1. Create or use an existing Amazon AWS account
  2. Install the latest version of AWS CLI
  3. Install the latest version of AWS SAM CLI
  4. Install Docker
  5. Install NodeJS to be able to run npm commands

Run Locally

  1. BACKEND: Run the Lambda service

    • Build the Java code: sam build
    • Create an S3 bucket: aws s3 mb s3://YOUR_BUCKET
    • Deploy the SAM template: sam deploy --s3-bucket BUCKET_FROM_ABOVE --parameter-overrides S3Bucket=BUCKET_FROM_ABOVE FrontendDeployment=local
    • Run the local API: sam local start-api --warm-containers LAZY
  2. FRONTEND: Run a local web server (aka the frontend):

    • CD into the web directory: cd web
    • Install dependencies : npm install
    • Run the local server: npm run run-local
  3. DATA Create some sample data (if needed):

    • aws dynamodb batch-write-item --request-items file://data/recipedata.json
    • aws dynamodb batch-write-item --request-items file://data/categorydata.json

After doing all of this, you will have a server running on port 8000 - you can access it by going to http://localhost:8000 in your browser.

To stop either the local backend (the sam local... command) or local frontend (the npm run...) command, simply press Ctrl-C in the terminal where the process is running.

(back to top)

Contact

(back to top)

Acknowledgments

  • Nashville Software School for supporting me in my journey of lifelong learning
  • Instructors Andy Collins and Charlie Penner for their endless patience, wisdom and guidance

(back to top)

About

Your ultimate personal recipe curation app - "Recipeo". Fullstack app built with Java on AWS Lambdas with DynamoDB, and HTML/CSS/Javascript

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published