This is a group project built in our second module of our curriculum at microverse. its a web application for listing all of the food sources and how to prepare them, using a video and an instruction guide
Our goal here is to Build an application that calls from a large data set of food from an API and also integrate some user involvement where you can like and comment on your favorite meal. click here to see deployed live version
- Responsive HTML page
- Integrated webpack
- Integrated MealDB API
- Integrated Involvement API
- Addition of unit test using Jest.
- Lighthouse (An open-source, automated tool for improving the quality of web pages. It has audits for performance, accessibility, progressive web apps, SEO and more).
- Webhint (A customizable linting tool that helps you improve your site's accessibility, speed, cross-browser compatibility, and more by checking your code for best practices and common errors).
- Stylelint (A mighty, modern linter that helps you avoid errors and enforce conventions in your styles).
- ESlint (A mighty, modern linter that helps you avoid errors and enforce conventions in JavaScript codes)
- Webpack (Used for bundling JavaScript files for usage in a browser)
- Jest (A JavaScript testing framework designed to ensure correctness of any JavaScript codebase. It allows you to write tests with an approachable, familiar and feature-rich API that gives you results quickly.)
To get a local copy up and running follow these simple example steps.
The basic requirements for building the executable are:
- A working browser application (Google chrome, Mozilla Fire fox, Microsoft edge ...)
- VSCode or any other equivalent code editor
- Node Package Manager (For installing packages like Lighthous, webhint & stylelint used for checking for debugging bad codes before deployment)
git clone https://github.com/harlexkhal/Foodipy <Your-Build-Directory>
To get all package modules required to build the project run:
npm install
every package module required to build the project is listed in the package.json file. this is used as a reference to get all dependencies.
To build the project run:
npm run build
after you run this sucessfully you'd locate the build from in the dist
folder located from the parent directory of the project. two files are being built which are, core.js and index.html
To run the program on a browser through a server run this command in your cli
npm start
This should open the page in your localhost on port 8080. then you'd be able to view the built page generated using webpack.
You can find each unit test cases in the __Testbase__
folder located in the parent source directory of the project. you can create your own custom unit test and test it by running
npm run test
This should run all unit test found in the unit.test.js
from the __Testbase__
folder.
All source code files are licensed under the permissive zlib license (http://opensource.org/licenses/Zlib) unless marked differently in a particular folder/file.