An IQ Test SPA Application compatible with Raven's Progressive Matrices (RPM) puzzles
๐ Live Demo
Try the RPM IQ Exam now at https://rpmtest.pages.dev/
Example of Level 4 puzzle - identify the pattern and select the missing piece
RPM IQ Exam is a modern Single Page Application (SPA) based on Raven's Progressive Matrices tests. It provides scientifically validated pattern recognition tests to measure cognitive abilities and reasoning skills.
- ๐งฉ Authentic RPM Puzzles: Scientifically validated pattern-based questions
- ๐ฏ Adaptive Testing: Difficulty adjustment based on user ability
- ๐ Detailed Analysis: Comprehensive results and performance analytics
- ๐ฑ Responsive Design: Optimal experience on all devices
- โฟ Accessibility: WCAG 2.1 compliant inclusive design
- ๐ Multi-language Support: English and Japanese supported
- ๐จ Modern UI: Intuitive and beautiful user interface
- Node.js 18.0 or higher
- npm or yarn
# Clone the repository
git clone https://github.com/yuis-ice/rpm-iq-exam.git
# Navigate to project directory
cd rpm-iq-exam
# Install dependencies
npm install
# Start development server
npm run dev# Production build
npm run build
# Preview build
npm run preview- Start Test: Begin the test from the main page
- Answer Questions: Select the optimal answer from the presented patterns
- Progress: Automatically advance to the next question after each answer
- View Results: Check detailed analysis results after test completion
Raven's Progressive Matrices:
- Measure pattern recognition abilities
- Language-independent intelligence test
- Scientifically recognized indicator of fluid intelligence
- Widely used in education, psychology, and HR fields
- Frontend: React 18
- TypeScript: Type-safe development
- Build Tool: Vite
- Styling: CSS Modules / Styled Components
- State Management: React Context / Zustand
- Testing: Jest, React Testing Library
- Linting: ESLint, Prettier
src/
โโโ components/ # Reusable components
โโโ pages/ # Page components
โโโ hooks/ # Custom hooks
โโโ utils/ # Utility functions
โโโ types/ # TypeScript type definitions
โโโ styles/ # Global styles
โโโ assets/ # Static assets
โโโ tests/ # Test files
# Run all tests
npm run test
# Run tests in watch mode
npm run test:watch
# Generate test coverage
npm run test:coverageWe welcome contributions to the project! Please see our Contributing Guide for details.
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Create a Pull Request
This project is released under the MIT License.
If you discover a security issue, please report it following our Security Policy.
- ๐ Bug Reports: Issue Tracker
- ๐ฌ Questions & Discussions: Discussions
- ๐ Documentation: Wiki
- Additional puzzle types
- Detailed statistics and progress tracking
- Custom test configuration
- Team/organization features
- API integration capabilities
- Data export functionality
- Raven's Progressive Matrices researchers
- Open source community
- All contributors
Experience better cognitive assessment with RPM IQ Exam! ๐