An app that interactively narrows-down valid menu items based on previous selections. React app built with React. React Native app built with React-Native and Expo.
Backend application that matches words from client requests and provides the appropriate response based on an existing context table.
Typescript is installed in all projects for type safety and code standards.
- Satisfy Test Instructions for React
- Satisfy Test Instructions for React-Native
- Satisfy Test Instructions for Backend
The react-app
is bootstrapped with create-react-app
. The rn-app
was bootstrapped using expo
. The backend
server is a single script using restify
.
Important Files are described below:
src/App.tsx
is the main entry point.src/components/MenuSelection.tsx
is the component where the radio button validation logic is donesrc/components/RadioButton.tsx
is the individual component used for the radio buttonsrc/types/components.ts
typescript declaration filesrc/services/data.ts
abstraction for data fetching
App.tsx
is the main entry point.components/MenuSelection/index.tsx
is the component where the radio button validation logic is donecomponents/MenuItem/index.tsx
is the individual component used for the radio buttontypes/components.ts
typescript declaration fileservices/data.ts
abstraction for data fetching
index.ts
contains all the logic and server setup.
- Navigate to specific directory for testing with
cd <project>
, then runnpm install
to install essential node modules - Then run
npm start
to boot up development servers
- Install
Expo Go
on a mobile phone. - When
npm start
is executed, a QR code is displayed - Open
Expo Go
and scan the QR code.
Mobile phone and API server computer has to be in the same network.