A modern, interactive math learning application designed to help users master multiplication tables, squares, and cubes. Built as a high-performance hybrid mobile application using React (Vite) and Android (Kotlin).
FULLY VIBE CODED WITH v0 and gemini !
- Multiplication Master: Practice specific multiplication tables with customizable ranges.
- Powers & Roots: Dedicated modes for practicing Squares and Cubes.
- Interactive Quizzes: Real-time feedback and progress tracking during practice sessions.
- Modern UI: Clean, responsive design with full Dark Mode support.
- Hybrid Performance: Web-based interface integrated into a native Android container for the best of both worlds.
- Framework: React 19 (TypeScript)
- Build Tool: Vite 6
- Styling: Tailwind CSS 4
- Components: Radix UI / Shadcn UI
- Icons: Lucide React
- Language: Kotlin
- UI Framework: Jetpack Compose
- Engine: Android WebView (with Hardware Acceleration)
mathx/
├── react-app/ # React frontend source code
│ ├── src/ # Components, hooks, and business logic
│ └── public/ # Static assets
└── android-app/ # Native Android wrapper
└── app/
└── src/
├── main/java/ # Kotlin source (MainActivity, WebView setup)
└── main/assets/ # Where the built React app is hosted
- Node.js (v18+)
- Android Studio (Ladybug or newer)
- JDK 17
- Navigate to the
react-appdirectory:cd react-app - Install dependencies:
yarn install
- Start the development server:
yarn dev
- Build the React app as a single-file asset:
cd react-app yarn build:single - Copy the resulting
dist/index.htmlto the Android assets:cp dist/index.html ../android-app/app/src/main/assets/
- Open the
android-appfolder in Android Studio. - Sync Gradle and run the app on an emulator or physical device.
- Multiplication: Choose a base number (e.g., 7) and a range (e.g., 1 to 20) to practice that specific table.
- Squares: Practice squares from any range (e.g., 11² to 30²).
- Cubes: Master cubes for any range (e.g., 1³ to 15³).