- Introduced new components for the Forgot Password flow: EmailInput, OTPInput, OTPVerification, PasswordSetup, and ConfirmationMessage. - Implemented navigation updates in DashboardCard for project links. - Added a new decal image asset for the categories. - Updated sidebar assets to include decals. - Enhanced UserAuth page to include a link for forgotten passwords. - Created a dedicated ForgotPassword page to manage the entire password recovery process. - Added styles for the new Forgot Password components and updated existing styles for consistency.
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