Git Product home page Git Product logo

test-adfoodio's Introduction

The Adludio Restaurant Concept!

Greetings! As a potential new-hire we want to put you in charge of your very own restaurant. What will you be serving? We don't mind, as long as it's tasty (and completely digital).

The Challenge

Your challenge is to build a Full Stack Web app that lets the user order food and drinks from a menu (of your choice), and notifies them when it's 'ready' for pickup.

How it behaves:

  • The menu have three sections, foods, drinks and desserts. At least three items in each, priced differently. We expect you to use the information in the MENU.md file, and created a menu.json. Remember to choose three desserts.

  • The menu comes with a set of deals, make sure to check out the MENU.md file before you get started.

  • The app must store the menu, order and any stateful information in a database (MySQL).

  • The app must notify the user when the food is ready for pickup (My recommendation is that you set a wait/timeout to simulate the "chef").

  • The app must use styling (even if it's not pretty). Extra points for Material UI.

  • When browser's refreshed, the session must remain intact - the user and order details persist.

  • The app must have some tests (only enough so we understand how you approach testing)

  • The app must use Typescript, extra points if properly typed.

The technology

We have already set up the repo to use these technologies:

  • Docker + Docker-compose
  • Node + Express + Typescript
  • React (using Create React App, you may switch it out if you wish) + Typescript
  • MySQL

Questions

When you give us your task back, we expect you to answer these questions:

  • What would you improve with your code?
  • How would you scale your code for more users?
  • What general patterns did you use to structure your code?
  • Is there anything you think we should change about this test?

We will use them when we read your code, to try and understand your thought process, so that even if it's not perfect (or even done), we are able to give you a fair chance! :)

How to get started

  1. Clone this repository
  2. Checkout a new branch to work on
  3. Make sure you have docker and node installed
  4. Add api.adfoodio.site to your hosts. If you are on linux you can use the following command:
sudo sh -c 'echo "\n127.0.0.1 api.adfoodio.site\n::1 api.adfoodio.site\n" >> /etc/hosts'
  1. Run docker-compose up in the project folder
  2. Run npm start in frontend folder
  3. Start writing! Good luck

How to send things back

When you have something to send in, create a git patch like this

  1. git format-patch master --stdout > ~/path/to/file/somename.patch
  2. Email the patch to [email protected]

Help!

If you get stuck, are not able to complete the assignment to a degree you feel comfortable with in time, or have any question at all, please let us know as soon as possible!

The entire reason for this test is to get an idea of your skills, so we want to make sure that you have the best possible chance :)

Just send us an email on: [email protected]

test-adfoodio's People

Contributors

evenius avatar

Watchers

James Cloos avatar  avatar  avatar Harry Dykins avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.