Welcome to the frontend developer monorepo challenge! This repository contains a nearly complete frontend application built with NRWL's NX monorepo build system. Designed to resembles a real-world, enterprise-scalable, frontend stack, your task will be to complete a series of stories including adding features, fixing bugs, and writing tests for the existing applications. This challenge is meant to showcase your frontend development skills in a realistic scenario.
This repo contains two React applications and four libraries:
- React application:
apps/inventory- add new products to store inventoryapps/microtech-store- create order by adding products to a cart and checkout
- local libraries:
libs/products- import, add, edit, view productslibs/orders- add products to cart and checkoutlibs/shared/data- shared app state, types, DB management, and utilslibs/shared/ui- common UI components
This repo also uses Nx module boundary rules to enforce architectural constraints
- NX - monorepo management
- Vite - build tool
- TypeScript - syntactic JavaScript superset adding static typing
- React - frontend web framework
- React Router - routing library
- Jotai - atomic app state management
- TanStack Query - async state management
- idb - promise-based IndexedDb wrapper
- Tailwind - CSS framework
- Daisy UI - Tailwind component library
- Font Awesome - icon font library
- Cypress - End-to-end and component testing framework
- Testing Library - Unit testing framework
Finally, check out the Getting Started wiki page to setup your local branch and access the development challenge stories.