- Updated Line component to include point type in Tube name and modified userData structure. - Deleted unused useAisleDragSnap helper and refactored usePointSnapping to handle both aisle and wall snapping. - Updated Point component to utilize new snapping methods and improved snapping logic for aisles and walls. - Enhanced wall classification logic to streamline room detection and wall flipping checks. - Refactored Wall component to utilize new material handling and wall flipping logic. - Updated WallCreator to manage wall creation and snapping more effectively, including handling intersections with existing walls. - Modified useBuilderStore and useWallStore to support new wall material properties and retrieval methods. - Adjusted TypeScript definitions for Wall interface to reflect changes in material properties.
Getting Started
Follow these steps to set up and run the project locally.
Prerequisites
Ensure you have the following installed on your system:
- Node.js: Download and install Node.js
- npm: Comes with Node.js, but you can also install npm separately
- yarn (optional): If you prefer to use Yarn, install it here
- TypeScript: This project uses TypeScript, and the necessary dependencies will be installed automatically.
Installation
-
Clone the repository:
git clone https://github.com/S0Vishnu/react-production-project-boilerplate.git cd react-production-project-boilerplate -
Cloning repository with User Credentials:
git clone https://your_username:password@github.com/S0Vishnu/react-production-project-boilerplate.git cd react-production-project-boilerplatenote: if password contains special charecters use:
- @ → %40
- : → %3A
- / → %2F
- ? → %3F
- & → %26
- = → %3D
- ! → %21
-
Install the dependencies:
npm install -
Start server:
npm start -
Build the app for production:
npm run build -
Tests
This project includes both unit tests using Jest and end-to-end (E2E) tests using Cypress. Here’s how you can run and manage these tests.
Unit Tests (Jest) Unit tests are located in the
src/tests/unit/directory. They test individual components and functions to ensure they work as expected. Jest is used for running these tests.Running Unit Tests To run the unit tests, use the following command:
npm run testEnd-to-End (E2E) Tests (Cypress) Cypress can be run in two modes
-
Interactive Mode:
npm run cypress:open -
Headless Mode:
npm run cypress:run
-
Run Documentation(Docsify)
-
Installation (if needed):
npm i docsify-cli -g -
Run Command:
docsify serve docs