Prerequisites
Before you begin, ensure you have the following installed:- Node.js v18 or higher
- npm v9 or higher (comes with Node.js)
- A code editor (VS Code recommended)
- Git (for version control)
Clone the Repository
First, clone the repository to your local machine:Installation
Install Dependencies
Install all required npm packages:This will install all dependencies listed in
package.json, including:- React 19.2.0
- Vite 7.3.1
- TypeScript 5.9.3
- Tailwind CSS v4.2.1
- Vitest 4.0.18
Start Development Server
Run the development server:The application will be available at
http://localhost:5173The dev server includes hot module replacement (HMR), so your changes will appear instantly without a full page reload.
Available Scripts
The project includes several npm scripts for development and testing:Script Details
npm run dev- Starts Vite development server with HMR on port 5173npm run build- Compiles TypeScript and builds production bundle todist/npm run lint- Runs ESLint on the codebase to check for code quality issuesnpm run preview- Serves the production build locally for testingnpm run test- Runs all Vitest tests once and exitsnpm run test:watch- Runs tests in watch mode, re-running on file changes
Development Workflow
Run Tests
Before committing, run the test suite:Ensure all 62+ tests pass. The test suite includes:
- Scoring algorithm validation
- Dataset structural integrity checks
- Golden test vectors for uniform response patterns
Environment Configuration
This project has no environment variables or external configuration. Everything runs client-side with no backend required.
Troubleshooting
Port Already in Use
If port 5173 is already in use, Vite will automatically try the next available port (5174, 5175, etc.). Check the terminal output for the actual URL.Type Errors
If you encounter TypeScript errors:Module Not Found
If you see module resolution errors:Tests Failing
If tests fail unexpectedly:Next Steps
- Review the Project Structure to understand the codebase organization
- Learn how to Customize the questionnaire or UI
- Read the Contributing Guidelines before submitting changes