You have to implement a simple CRUD Food_logger where the user can log their calories, proteins, carbohydrates, fats.
-
You have 4 hours of time.
If you reach this time limit stop your work and send us your work. It is one part of the case-study to respect this time limit.
-
There are no restrictions on how to use the provided time. If you want to code the entire time, take a break or a coffee - it’s up to you.
-
This is a real world situation. You are allowed to consult the Internet, use every library you want, call a friend.
BUT: You are not allowed to do pair programming.
-
Develop your code based on latest version of Rails (currently 6.1.3.2)
-
Document your code (not the scaffold code).
-
Use open-source third-party packages whenever they make sense. Do not reinvent the wheel.
-
Keep the following priorities in mind while you implementing - in the mentioned order:
- Good REST practices.
- Code quality
- Usage of object oriented methods
- Functionality
-
A user should be able to sign up/ sign in to the app.
-
The user should see a dashboard just if he is signed in.
-
The dashboard lets the user see their calories, proteins, carbohydrates, fats ranked per each meal type.
-
The user should be able to log their calories, proteins, carbohydrates, fats, per each meal type.
-
You may use a database (relational or not), or store everything in memory.
-
You should write down a few upsides and downsides of their particular implementation from multiple perspectives (engineering, business, scalability).
-
Integrate Social Registration / Social Login (say, Google + Facebook + optionally more) in addition to the existing process. The resulting integration should work smoothly with the existing email/password based one.
-
Write Unit tests for one or more methods.
-
CSS/SCSS styling is not important. Just use Bootstrap or Bulma should be good.
-
Get the code.
-
Clone this fork to your computer:
git clone <your github url> # Example: git clone [email protected]:zeitdev/case-study.git
-
Clone this repository with local branch:
git clone [email protected]:zeitdev/case-study.git git checkout -b run-<yourname>-<branch_name> # Example: git checkout -b branch_name
-
Just download it from [here]
-
-
Open in your favorite IDE.
-
Start the study-case.
-
Create a pull request to this repo with your case study. Let your contact know that you completed the PR.