Craft beer is become very popular this days. And homebrewing growing with it. To make your own beer at home it's very rewarding process because it's nice to see and try the product that you made by yourself and can share with your friends in the end of the week. But to do it from scratch takes a time, investments, knowledge, space and more. Even you wish to make a beer you can face some problems that can stop you. To make your life easier and safe your time and money you can skip brewing proccess and start straight away from fermentations. By buying "Extracts" of beer that you would like to make, pour it in to the bucket add water and wait.
This project is made to collect different brands and products from around the world. Here people can add products and reviews(not implemented) to share they experience or get information about the product they looking for. Main goal is to collect data from users(most popular beer or brand) for further use.
This website focusing on people who are interested to begin make a beer using "Extract" sets to help them find product that they looking for and for people who would like to share they experience with product that they had been used.
- I decided to make a beer but first I have to find out what I can choose from. I can go to Product page and see all products, I can select specific type using filter and continue to make a research.
- I used some product and like it/didn't like so I want share my experience I can go to Product page and try to find product that I used if it not there I can easily add it but using Insert product functionality.
-
Home page
- Action button that send you to Product page
-
Product page
- Filter - That help you to filter beer types
- Add product - redicrect you to "Add product" form where you can fill it out and send it to database.
- Read more - redirect to description page of choosen product
-
Description page
- Edit - redirect you to "Edit" page where you can change information about the product.
- Delete - Product will be delete product from database
-
Brands page
- Add brand - redicrect you to "Add brand" form where you can fill it out and send it to database.
- Edit - redirect you to "Edit" page where you can change information about the brand.
- Add log in functionality.
- Product comment functionality.
- Product rating/score functionality.
-
Materialize
- For template and to make website mobile responsive
-
Flask
- Microframework for making web services in Python.
-
PyMongo
- Python distribution containing tools for working with MongoDB, and is the recommended way to work with MongoDB from Python.
-
ObjectId
- Used to work with mongo ObjectId
-
Dotenv
- Reads the key,value pair from .env file and adds them to environment variable. It is great for managing app settings during development and in production using 12-factor principles.
-
JQuery
- Used for simplify DOM manipulation.
-
MongoDB
- For storing data.
All tests going from top and from left to right
During the test on different devices and browsers no problems has been found.
- Logo, links on navigation bar and on footer working well.
- Action button working well.
- Filter working well. I can select beer type and see the result.
- Add Product button open a page form how it should be.
- Read more button open a product description page how it should be.
- Add Brand button open a page form how it should be.
- Collapsible working well.
- Edit button open a page form how it should be.
- Links working well.
- After filling up the form and submit, it appears in database and it visible on the web page.
- Cancel button calls dialogue about further actions, by pressing pressing "Agree" it redirect to Products Page and when pressed "Go back" opens form page how it should be.
- After filling up the form and submit, it appears in database and it visible on the web page.
- Cancel button calls dialogue about further actions, by pressing pressing "Agree" it redirect to Products Page and when pressed "Go back" opens form page how it should be.
- Edit button open a page form how it should be.
- Delete button calls dialogue about further actions, by pressing pressing "Agree" it delete record from database and this product removed from web page and when pressed "Go back" opens description page how it should be.
- All fields are filled up with data that belongs to this specific product.
- Cancel button calls dialogue about further actions, by pressing pressing "Agree" it redirect to Description/Brands Page and when pressed "Go back" opens form page how it should be.
- Require.txt contains a lot of thinks that I didn't use because from the beginning it was inside AWS. My mentor explain me that next time i should create a virtual environment.
- Log in to Heroku
- Create new app. Select App name and server region.
- Create file with dependencies. pip freeze > requirements.txt
- Create Profile. web: python app.py
- Create git repository. Git init, git add.
- Log in to heroku. heroku login -i
- Connect to heroku repository. heroku git:remote -a {your-project-name}
- Push to heroku. git push heroku master
- Lazy Brew