Giter VIP home page Giter VIP logo

familyrecipes's Introduction

[Our Family Recipes]

  • image

Visit the live Website : Family Recipes ➡️

  • Family Recipes that are to be shared amoung family and friends.
  • Users will be able to comment on and add useful suggestions of ways that the recipe can be improved.

User Stories:

  • First time Visitor Goals As a first time user of this site, I would like to be able to easily create a draft of a recipe.
    • As a first time user, I would like to be able to comment on recipes.
    • As a first time user, I would like to Like/Unlike the recipes.
    • As a first time user, I would like to be able to view likes.
    • As a first time user, I would like to view comments on the recipes.
    • As a first time user, I would like to easily register.
    • As a first time user, I would like to view a paginated list of recipes so that I can select which post I want to view.
    • As a first time user, I would like to be able to edit and delete my comments.

Existing Features

  • Interactive Elements:
    • Home page
      • image
    • Login/Logout
      • image
      • image
    • Register
      • image
    • Like
      • image
    • Comment
      • image
    • Ability to edit/delete comments
      • alt-text-for-image

Languages Used:

  • Python
  • Django
  • HTML
  • CSS
  • JavaScript

Relational Database used:

  • Postgres

Frameworks, Libraries & Programs Used:

  • Git: used to utilize the Gitpod terminal to commit to Git and Push to GitHub
  • GitHub: used to store project code after being pushed from Git
  • GitPod: used as cloud based IDE for writing code
  • Balsamiq Wireframes: used to draw wireframes of pages of project
  • Am I Responsive? used to give a visual of what the project looks like on various devices
  • Heroku: used to deploy the Our Family Recipes app
  • Cloudinary: used to import my Cloudinary field for the featured image
  • Diffchecker: used to compare code when I had an error

Wireframes

To view all wireframes, go to WIREFRAMES.md

Deployment

The live deployed application can be found at family-recipes14.herokuapp.com.

Heroku Deployment

This project uses Heroku, a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.

Deployment steps are as follows, after account setup:

  • Select New in the top-right corner of your Heroku Dashboard, and select Create new app from the dropdown menu.
  • Your app name must be unique, and then choose a region closest to you (EU or USA), and finally, select Create App.
  • From the new app Settings, click Reveal Config Vars, and set the following key/value pairs:
    • CLOUDINARY_URL (insert your own Cloudinary API key here)
    • DATABASE_URL (this comes from the Resources tab, you can get your own Postgres Database using the Free Hobby Tier)
    • SECRET_KEY (this can be any random secret key)

Heroku needs two additional files in order to deploy properly.

  • requirements.txt
  • Procfile

You can install this project's requirements (where applicable) using: pip3 install -r requirements.txt. If you have your own packages that have been installed, then the requirements file needs updated using: pip3 freeze --local > requirements.txt

The Procfile can be created with the following command: echo web: gunicorn family_recipes.wsgi > Procfile

For Heroku deployment, follow these steps to connect your GitHub repository to the newly created app:

Either:

  • Select "Automatic Deployment" from the Heroku app.

Or:

  • In the Terminal/CLI, connect to Heroku using this command: heroku login -i
  • Set the remote for Heroku: heroku git:remote -a <app_name> (replace app_name with your app, without the angle-brackets)
  • After performing the standard Git add, commit, and push to GitHub, you can now type: git push heroku main

The frontend terminal should now be connected and deployed to Heroku.

Local Deployment

Gitpod IDE was used to write the code for this project.

To make a local copy of this repository, you can clone the project by typing the follow into your IDE terminal:

  • git clone https://github.com/FamilyRecipes.git

You can install this project's requirements (where applicable) using: pip3 install -r requirements.txt.

Alternatively, if using Gitpod, you can click below to create your own workspace using this repository.

Open in Gitpod

Future Additions to page

  • put drop down menu to have user choose minutes and hours for the cooking time and prep time
  • put drop down menu to have user choose measurement type
  • have measurements able to be converted from metric to US standard
  • add ability to put fractions in recipes
  • have the user be able to add recipes of their own

Credits

Code

  • Readme used sample readme from code institute as a model. Github

Content

  • All content written by the developer.

Acknowlegements

  • My Mentor for his help and feedback.
  • Tutor support at Code Institute
  • Family for help with help and feedback on website as a user

Data Schema

  • image

Testing

To view all testing, go to TESTING.md

familyrecipes's People

Contributors

pattytonyoneill avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.