Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rcrdk/pizza-shop-web
A simple Pizza Shop for practice of fetching API data on a React app.
https://github.com/rcrdk/pizza-shop-web
axios happy-dom mock-service-worker playwright radix-ui react react-hook-form react-query react-router shadcn-ui tailwindcss testing-library typescript zod
Last synced: 8 days ago
JSON representation
A simple Pizza Shop for practice of fetching API data on a React app.
- Host: GitHub
- URL: https://github.com/rcrdk/pizza-shop-web
- Owner: rcrdk
- Created: 2024-02-02T00:18:58.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-13T16:22:53.000Z (12 months ago)
- Last Synced: 2024-12-08T17:11:59.324Z (2 months ago)
- Topics: axios, happy-dom, mock-service-worker, playwright, radix-ui, react, react-hook-form, react-query, react-router, shadcn-ui, tailwindcss, testing-library, typescript, zod
- Language: TypeScript
- Homepage:
- Size: 482 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🍕 Pizza Shop
I developed this project as a challenge of my latest studies on React lessons at [Rocketseat](https://www.rocketseat.com.br).
![]()
## 🚀 Techs and Tools
- [React](https://reactjs.org)
- [TypeScript](https://www.typescriptlang.org/)
- [shadcn/ui](https://ui.shadcn.com) + [Radix UI](https://www.radix-ui.com) + [TailwindCSS](https://tailwindcss.com)
- [React Query](https://tanstack.com/query/v3/)
- [React Router](https://reactrouter.com/en/main)
- [React Hook Form](https://react-hook-form.com/) + [Zod](https://zod.dev/)
- [Axios](https://axios-http.com/docs/intro)
- [Testing Library](https://testing-library.com) + [Happy DOM](https://github.com/capricorn86/happy-dom)
- [Mock Service Worker](https://mswjs.io) + [Playwright](https://playwright.dev)## 💻 Project
This project was developed for practicing the connection between this front-end app and it's API provied by the school and available at links section. The main practice was connecting the API to this front-end project using React Query for caching data. It was used shadcn/ui as component library along with radix. Here I've added unit tests on some components using Testing Library with Happy DOM and also, added E2E tests with Playright and Mock Service Worker.
**It includes:** A sign up and sign in pages; A dashboard with summary and graphs; A modal form to edit restaurant information; An orders module with status management and view detailed information; A error page.
## 🔗 Links
- [Back-End API](https://github.com/rocketseat-education/pizzashop-api)
> The Resend integration was disabled. To run app and get access url, insert any value at `RESEND_API_KEY` on `.env` file; In `seed.ts` find and copy the e-mail for sign inside create restaurant manager seed function; Paste the e-mail on login and get the access url on api console terminal.## ⚙️ Enviroment Variables
```shell
VITE_API_URL="http://localhost:3333"
VITE_ENABLE_API_DELAY=true # true for delaying requests and test skeletons
```