This project is a starting point for the fullstack engineer technical interview take home task. It consists of a Frontend (with some functionality already build) and a backend application (to be created by you).
The frontend application is build using Create react app and is a simple react app using typescript.
- Node (version 14+)
- Yarn (modern version)
From the frontend-application
directory and yarn
From the frontend-application
directory run yarn start
This runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
.env
contains URL for Sparrow graphql APIindex.tsx
is where the application is set up, including the configuration of Apollo clientApp.tsx
is the root of the application, and where URL routing is configuredUserContext
is set up inApp
, this means you can access the user ID in any component via this contextFavouritesContext
is set up inApp
, this context provides dummy functionality for holding the state of the favourites for a given user, this data will be lost when reloading a page, or logging in cross browser, and should be replaced with calls to an API.pages
directory contains the top-level components which form the contents of each pagecomponents
directory contains other reusable componentslayout
contains the main layout for the page including menu barutils
contains helper functions to perform data fetching
The backend-application
directory is a placeholder for your new microservice. Please update this section of the read me with instructions on how to run the service.
Please add any comments on choices you have made, any missed functionally or known bugs and what you would improve or do differently given more time if you were to make this solution production-ready.