A modern, responsive Memory Game built with React, TypeScript, and Tailwind CSS.
- 🎮 Classic Memory Game gameplay with smooth animations
- 🎨 Modern and responsive UI with Tailwind CSS
- ⚡ Built with React 19 and TypeScript
- 🎨 Styled with Tailwind CSS 4 and utility-first approach
- 🚀 Optimized for performance with Vite 6
- 📱 Mobile-friendly design
- 🎯 Accessibility features with ESLint JSX A11y
- 🛠️ Comprehensive development tools (ESLint, Prettier, TypeScript)
- React 19 - A JavaScript library for building user interfaces
- TypeScript 5.7 - Typed JavaScript
- Tailwind CSS 4 - Utility-first CSS framework
- Vite 6 - Next Generation Frontend Tooling
- ESLint 9 - Code linting with React and accessibility plugins
- Prettier 3 - Code formatting with Tailwind CSS plugin
- Motion - Animation library
- Lucide React - Beautiful icons
- clsx & tailwind-merge - Utility for managing class names
- Node.js (v18 or higher)
- pnpm (recommended) or npm
-
Clone the repository:
git clone https://github.com/igortullio/memory-game.git cd memory-game -
Install dependencies:
pnpm install
-
Start the development server:
pnpm dev
-
Open http://localhost:5173 in your browser.
pnpm dev- Start the development server with hot reloadpnpm build- Build the project for production with TypeScript compilationpnpm preview- Preview the production build locallypnpm lint- Run ESLint to check code quality and accessibility
memory-game/
├── src/
│ ├── components/ # React components
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utility functions and shared logic
│ ├── constants.ts # Application constants
│ ├── types.ts # TypeScript type definitions
│ ├── App.tsx # Main application component
│ ├── main.tsx # Application entry point
│ └── index.css # Global styles
├── public/ # Static assets
├── index.html # HTML entry point
├── vite.config.ts # Vite configuration
├── tsconfig.json # TypeScript configuration
├── eslint.config.js # ESLint configuration
└── package.json # Project dependencies and scripts
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.