Language : English | Bahasa Indonesia
Apps for Lunch Recipes Suggestion
There is no deadline to do this tech task. It's up to you how you manage your time to accomplish at least the requirements.
Our assessment criteria will pay attention to:
- How the application is structured, and files are organised.
- Code quality (Clean code).
- The quality of test cases in your test suite.
- Interpretation of the problem.
- Use of
git
. - Implementation and final execution.
- Commits, as this will allow us to understand some of the decisions you make throughout the process.
As a User, I would like to get a set of recipes what I can have for lunch today based on the contents of my fridge so that I can quickly decide what I'll be having.
Acceptance Criteria
- Given that I have started the app, I should input my preference lunch date, or it would be today date if it is empty
- Given that I have made a request to the
/ingredients
endpoint, I should receive aJSON
response of the ingredients in my fridge. - Given that I get the options of my ingredients, I should choose some ingredients to get the recipes.
- Given that an ingredient is past its
use-by
date (inclusive), I should not be able to choose that ingredient. - Given that I have chosen some ingredients, I should request to the
/recipes
endpoint with?ingredients=<title-1>,<title-2>,<title-n>
as a query parameter. - Given that I get the result of the available recipes, I should see a list of the recipes as well as the ingredients to make per recipes.
Additional Criteria
- Fork this Flutter project as a base for your project.
- The application MUST have more than one screen and navigation.
- The application MUST contain unit / widget tests (e.g. using the
flutter_test
package). - The application MUST be completed using an
OOP
approach. - Any dependencies MUST be installed using dependency management tools (
Pub
for Flutter). - Any installation, build steps, testing and usage instructions MUST be provided in a
README.md
file in the root of the application. Do not use a autogenerated file
Use the Flutter framework.
Documentation
https://documenter.getpostman.com/view/9359572/SW17TFmK
Mock Base URL
https://lb7u7svcm5.execute-api.ap-southeast-1.amazonaws.com/dev
Instruction
- Use
/ingredients
to get all of my ingredients on my fridge - Use
/recipes?ingredients=<title-1>,<title-n>
to get recipes based on the preferred ingredients title
NOTES : This API is only a mock server to simulate the request and response body. So the result of the API does not affect your final result.
The application should be committed to a public
repository on GitHub
or BitBucket
(<lastname>-<firstname>-techtask-mobile
) and simply send us a link to the repository.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter, view online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.