An open API service indexing awesome lists of open source software.

https://github.com/ktcotz/testoviron

Your only one repository with practice testing principles includes MSW, Supabase, Zustand, Vitest, Playwright and more..
https://github.com/ktcotz/testoviron

advanced msw playwright react storybook supabase testing typescript vitest zustand

Last synced: 3 months ago
JSON representation

Your only one repository with practice testing principles includes MSW, Supabase, Zustand, Vitest, Playwright and more..

Awesome Lists containing this project

README

          




Testoviron – A playground for practical testing in modern React applications

## πŸ§ͺ Project Overview

**Testoviron** is a collection of practical testing examples built with modern frontend libraries and tools.
It’s designed to demonstrate effective testing strategies for real-world React applications using various state management and validation solutions.

This repository includes examples for components, hooks, async operations, form validation, and state management – all test-driven with tools like **Vitest**, **React Testing Library**, and **MSW**.

---

### πŸ” What’s Covered?

- βœ… JSX – basic and advanced patterns
- βœ… Props and State handling
- βœ… Custom Hooks (with isolated testing)
- βœ… API Fetching (unit + mocked integration)
- βœ… MSW (Mock Service Worker)
- βœ… Context API (state logic and consumer testing)
- βœ… Zustand (store testing with edge cases)
- βœ… Supabase (mocked integration)
- βœ… Form testing – with React Hook Form and Zod
- βœ… Full CRUD testing flows
- βœ… Async testing patterns

---

## πŸ› οΈ Tech Stack

| Tool / Tech | Purpose |
| ---------------------------------------------------------------------------------------------------------------------------------------- | -------------------- |
| ![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB) | UI Framework |
| ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) | Type safety |
| ![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge&logo=vite&logoColor=white) | Build tool |
| ![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white) | Styling |
| ![Visual Studio Code](https://img.shields.io/badge/Visual%20Studio%20Code-0078d7.svg?style=for-the-badge&logo=visual-studio-code&logoColor=white) | IDE |

---

## πŸ“š Libraries and Tools

| Library / Tool | Role |
| ----------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| ![Vitest](https://img.shields.io/badge/-Vitest-252529?style=for-the-badge&logo=vitest&logoColor=FCC72B) | Unit Testing |
| ![Testing Library](https://img.shields.io/badge/-TestingLibrary-%23E33332?style=for-the-badge&logo=testing-library&logoColor=white) | UI Testing |
| ![MSW](https://img.shields.io/badge/MSW-API--Mocking-orange?style=for-the-badge) | API Mocking |
| ![Zustand](https://img.shields.io/badge/Zustand-State--Management-informational?style=for-the-badge) | Store Testing |
| ![Supabase](https://img.shields.io/badge/Supabase-3ECF8E?style=for-the-badge&logo=supabase&logoColor=white) | DB Integration |
| ![Storybook](https://img.shields.io/badge/-Storybook-FF4785?style=for-the-badge&logo=storybook&logoColor=white) | UI Docs |
| ![React Hook Form](https://img.shields.io/badge/React--Hook--Form-EC5990?style=for-the-badge) | Form Handling |
| ![Zod](https://img.shields.io/badge/Zod-Validation-blueviolet?style=for-the-badge) | Form Validation |

---

## πŸš€ Getting Started

```bash
# 1. Install all dependencies
npm install

# 2. Run unit/integration tests (Vitest)
npm run test

# 3. Run e2e tests (if configured, e.g. Playwright)
npm run test-e2e
```

## πŸ‘¨β€πŸ’» Developer Info
- πŸ™ GitHub: https://www.github.com/ktcotz
- πŸ’Ό LinkedIn: https://www.linkedin.com/in/naskret-kamil/
- 🌐 Portfolio: https://kamil-me.vercel.app/
- πŸ“« Email: naskret.kamil@gmail.com