Giter Club home page Giter Club logo

milestone-project-3-recipes's Introduction

Data Centric Development Milestone Project

Serbian Kitchen

Serbian kitchen is online cookbook where users can browse, add, edit or delete recipes. Clean and simple, recipes are menages by 3 categories, appetizers, main food and desserts.

Deployed link here

UI/UX

Project goals

Serbian Kitchen is milestone project for Code Institute Data Centric Development module. The goal of this project is to create, store, edit and delete recipes (CRUD). Target audience for this project is people that are simply interested in Serbian/Balkan cooking. My goal was to create online cookbook without any unnecesarry long descriptions - only straight-to-the-point recipes.

Developer goals

  • Provide a simple, easy to use online cookbook where user can browse, post, edit and delete recipes, filter them by categories.
  • By practice Python and non-relational database MongoDb.
  • Improve Bootstrap knowledge.
  • Learn to use Heroku Pages

Design

Main inspiration for Serbian Kitchen is my origin, because i miss that original food, since i live i Sweden, where the food is not so tasty.

I chose to override all B4 round corners on images, forms and buttons to suit my design. I choose white background color because the colors of recipe images are very colorfull and all over the spectrum.

To build the design of the page I used Bootstrap 4, FontAwesome.

Actualy i haven't done much browsing, made a site totally out of my head to be ass simple ass posible. After a googleing, i have realised that there is no Serbian Kitchen website.

During development i tried to simplified site ass much ass possible.

Wireframes

Features

Existing features

  • Sorting by category by clicking navigation links.
  • Index page contains pleasent photos sorted in carousel.
  • Social icons with links in the page footer
  • Bootstrap input field validation
  • Recipes displayed in list have title, description, cooking time and user information
  • Create, read, update, delete recipe (CRUD)
  • Carousel

Future features

  • Search: users are able to search for recipes by username, title or any other text. If no results are found message "No results found. Please try again".
  • Sign Up
  • Login
  • Google login
  • "Remember me" signup checkbox
  • Recipe image url validation
  • More categories
  • Admin console
  • Admin able to add/edit/delete categories
  • Recipe Comments

Information Architecture

MongoDB Atlas is used for storing data for this web site.

categories recipe
category_name: string recipe_name: string
category_name: string
recipe_description : string
ingredients: string
preparation_time: string
how_to: string
img_url: string

For the needs of this website I did not find the need to use other data types in MongoDB. In a real world application I would add image file uploads, dynamic input fields and rich text editing.

Technologies used

  • HTML5
  • CSS3
  • jQuery
  • Python 3.8.2 (flask)
  • MongoDB
  • Bootstrap CDN
  • Git & GitHub.com
  • Heroku.com pages
  • FontAwesome.com
  • Google Fonts
  • Google Chrome Developer tools

Manuel Testing

I extensively tested the page on laptop, mobile and iPad Pro 13" tablet after every major development test.

Heroku

Heroku was chosen as the deployment platform for this project. The steps to deploy the local app to Heroku were as follow: In Heroku, create an app. The app must have a unique name. Link that app to the GitHub repository by going to the "Deploy" tab in the main app menu. In the Settings tab, add the corresponding Config Variables as present in local development:

  1. MONGO_URI mongodb+srv://...
  2. IP 0.0.0.0
  3. PORT 5000
  4. SECRET_KEY Created "Procfile" by typing:
  5. $ echo web: python app.py > Procfile Push repo to Heroku
  6. $ git push heroku master

Credits

Code

  • Code Intitute

Images

Content

  • Recipes taken from various websites.

milestone-project-3-recipes's People

Contributors

kraljiccar avatar

Watchers

 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.