10XMind-Play is a comprehensive cognitive training platform designed to assess and strengthen memory, attention, processing speed, and cognitive flexibility through scientifically-grounded interactive tasks.
The platform features a suite of interactive psychological assessments:
- 🌈 Stroop Task: Measures selective attention and cognitive interference.
↔️ Flanker Task: Assesses ability to suppress irrelevant information.- 👈 Simon Task: Tests spatial stimulus-response compatibility.
- 🔢 Digit Span Task: Measures verbal working memory capacity.
- 🧊 Corsi Block Task: Assesses visuospatial working memory.
- 🗼 Tower of Hanoi: Evaluates planning and problem-solving ability.
- 🧠 N-Back Task: Challenges working memory and updating.
- 🛣️ Trail Making Test: Tests visual attention and task switching.
- 🎧 Dichotic Listening: Assesses selective auditory attention.
- 🔄 Mental Rotation: Tests spatial visualization ability.
- 🛑 SART: Sustained Attention to Response Task.
- Students: Access to all games, personal dashboard, and performance tracking.
- Admins: Dedicated dashboard to monitor student progress, view analytics, and manage data.
- Real-time performance metrics (Accuracy, Reaction Time).
- Visual charts and progress tracking.
- Dark/Light mode support for comfortable viewing.
- Frontend: React, TypeScript, Vite, Tailwind CSS, Shadcn UI.
- Backend: Node.js, Express.
- Database: SQLite.
- State Management: React Context API.
Follow these steps to set up the project locally.
- Node.js (v16 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/Mothilal-hire10x/10XMind-Play.git cd 10XMind-Play -
Install Frontend Dependencies
npm install
-
Install Backend Dependencies
cd server npm install
Before running the server, initialize the database:
# Inside the server directory
npm run migrate
npm run seed-
Start the Backend Server Open a terminal and run:
cd server npm run dev -
Start the Frontend Development Server Open a new terminal and run:
npm run dev
The application will be available at
http://localhost:3700.
If you'd like to run frontend and backend in development mode using Docker, there are two compose files included:
docker-compose.backend.yml— runs the backend dev server (ts-node-dev) and mounts./serverand./server/data.docker-compose.frontend.yml— runs the frontend dev server (vite) and mounts the project root.
Examples:
Start backend in Docker:
docker compose -f docker-compose.backend.yml up --buildStart frontend in Docker:
docker compose -f docker-compose.frontend.yml up --buildYou can also run both services together if you want them on the same network (two terminals):
docker compose -f docker-compose.backend.yml up --build
docker compose -f docker-compose.frontend.yml up --buildNotes:
- The backend will expose port
3701and the frontend3700. - We mount
/app/node_modulesas an anonymous volume to avoid overwriting dependencies installed inside the container. - The backend uses a mounted
./server/datadirectory so your SQLite database persists between runs.
10XMind-Play/
├── src/
│ ├── components/ # React components (Games, UI, Dashboards)
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utilities, API clients, Contexts
│ ├── styles/ # Global styles
│ ├── App.tsx # Main Application component
│ └── main.tsx # Entry point
├── server/
│ ├── src/ # Backend source code
│ ├── database.sqlite # SQLite database
│ └── package.json # Backend dependencies
├── public/ # Static assets
└── package.json # Frontend dependencies
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.