As a food lover I want to share with the world Balkan cuisine. This project is created to give the users information about the Balkan Cuisine and share with them most popular recipes. I think the users will have the opportunity to learn new recipes from different countries.
- UX
- Project Goals
- Target Audience Goals
- Site Owner Goals
- User Stories
- User Requirements and Expectations
- Images
- Wireframes
- Testing
- Bugs
- Static files
- Deployment
- Features that have been developed
- Technologies Used
- Planning + Testing:
- Bugs
- Deployment
- The main goal for this project is to share some delicious recipes from Balkan cuisine.
- The project is created for all people who have interest on cooking and want to explore more ways on preparing their meals.
- The website needs to be attractive and interactive providing an good User Experience to everyone who will use this site.
- I want to offer access for the users to register and be part of this site by sharing their own recipes.
- For making this project functional i put into practice the skills learned during the course.
- A website that provides a good experience.
- Visual interaction is important to give the idea how the food looks after preparetion.
- To have access on the website by registering and login.
- Having all the details needed for a recipe such as ingredients and directions.
- Adding own recipes and save, update and delete them.
- A website that works on mobile , tablet , desktop.
- Inna: " As a user i want to learn about different countries cuisine."
- Adela M : " When i visit such sites i want to be able to register, login and share my recipes with other users."
- Tom : " I want to navigate and get information about tradicional food in Balkan. "
- Arion : "When i share my recipes i would like to have full access on my recipes so i can update or delete if is needed"
- Make interactive website and get the users enjoy their navigation.
- Make it easy for the users to navigate, find information and details for each recipe.
- Offer different categories of recipes and different countries traditional food.
- Visually pleasing and a good description of the recipes.
-
Requirements:
- Use an interactive website and find interesting recipes.
- Provide information of the recipes in details to make it easy to understand.
- Need to see images of different food..
- To be able to share and save my recipes on this site.
-
Expectations:
- When you click on a recipe to provide all important details such as ingredients and directions.
- When adding own recipe to be able to save them on this site .
- Content to be informative and visually pleasing.
- Receive flashing messages for all the actions taken by the user .
- I used images from google for this project.
- Used a simple user registration, the password is encrypted using generate_password_hash function from Werkzeug Security module by using (pip install -U Werkzeug) command.
- Used Mongodb document database to host all the data of my site such as recipes, usernames ect.
- User can login and is able to create edit, delete his own recipe.
- Created an admin for the site giving access to add more categories, update or delete categories. If You like to login as an admin here you have admin credentials (username : admin), (password : Lalushi1)
- List all recipes created by the user, with the option to edit or delete the recipe.
- Getting flash mesagges once the recipe/category is added, updated and getting confirmation prompts when trying to delete a recipe/category.
- Carousel used with pictures of new recipes.
- Git
- Bootstrap
- Jquery
- Font-Awesome
- TinyPng (image compression)
- Am-I-Responsive
- W3-Official-Validator
- Heroku
- MongoDb
- Materialize
- Pep8
-
I have been doing testing manualy and everything is working as expected , everything is functional and app runing without errors.
-
When testing i need to check every page and their functionality.
-
When i click on home page i can see pictures and recipes,
-
im able to add recipe,
-
As a user im able to register and log in and see a profile page
-
If an admin login in they can see recipes they can add recipes,
-
And the user can successfully logout. So all CRUD funcionality is working as expected.
-
I also used DevTools to check if is any error on my website, and everything is working as expected without errors.
-
I used W3C Markup Validator for testing.
-
First step is by copping the URL of my project and check it if is any error. All the pages passing without errors.
-
Login-page passing without errors.
-
Register-page no errors found.
-
Add-recipe-page passing without errors.
-
Manualy tested python code through PEP8 passing withot errors. pep8 checker
The project is hosted on Heroku. For it to run correctly the following is required:
-
A Procfile that instructions Heroku how to run the app. To run this site use python app.py
-
requirements.txt. This file informs Heroku what dependencies are required to run the app correctly. It is created by typing on the terminal pip freeze > requirements.txt.
-
Create a new app in Heroku
-
Setup in Heroku the environment variables required to successfully run the app in Settings, Config Vars.
- MONGO_DBNAME
- MONGO_URI
- SECRET_KEY
- PORT
- IP
Connect Heroku to the project's repository on Github and setup automatic deployment. Heroku then will build a new version of the app every time a new deployment is pushed to Github.
Happy coding!