A modern Single Page Application built with React 19, Material UI v7, and React Router v7.
- React 19 - Latest version with improved performance and modern features
- Material UI v7 - Google's Material Design components with Emotion styling
- React Router v7 - Declarative routing with improved API
- TypeScript - Type-safe development experience
- Vite - Fast build tool with hot module replacement
- ESLint & Prettier - Code quality and formatting tools
- Dark/Light Theme - Toggle between dark and light modes with persistence
- Poppins Font - Modern typography throughout the application
- Clone the repository
- Install dependencies:
npm installStart the development server:
npm run devThe application will be available at http://localhost:5173
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLintnpm run lint:fix- Run ESLint with auto-fixnpm run format- Format code with Prettiernpm run format:check- Check code formatting
src/
├── components/ # Reusable UI components (ThemeToggle, etc.)
├── contexts/ # React contexts (ThemeContext)
├── layout/ # Layout components (Header, Navigation, etc.)
├── pages/ # Page components (Home, ReceiptParser, AudioParser)
├── theme/ # Material UI theme configuration
├── main.tsx # Application entry point
└── App.tsx # Main app component
- Home - Landing page with feature overview and technology showcase
- Receipt Parser - Upload receipt images and get AI-powered data extraction
- Audio Parser - Upload audio files and get AI-powered analysis including topic, emotion, and tags
- Theme Toggle - Switch between dark and light modes (persisted in localStorage)
- Responsive Design - Fully responsive layout that works on all devices
The project uses modern ESLint configuration with:
- TypeScript support
- React and React Hooks rules
- Prettier integration
Prettier is configured with:
- Semi-colons enabled
- Single quotes
- 100 character line width
- 2-space indentation
Custom theme configuration includes:
- Primary and secondary color schemes
- Typography settings
- Component style overrides
| Technology | Version | Purpose |
|---|---|---|
| React | 19.1.1 | UI Library |
| Material UI | 7.3.2 | Component Library |
| React Router | 7.9.1 | Routing |
| TypeScript | 5.8.3 | Type Safety |
| Vite | 7.1.2 | Build Tool |
| ESLint | 9.33.0 | Code Linting |
| Prettier | 3.6.2 | Code Formatting |
The application is fully responsive and works well on:
- Desktop computers
- Tablets
- Mobile devices
The project maintains high code quality through:
- TypeScript for type safety
- ESLint for code analysis
- Prettier for consistent formatting
- React strict mode for development warnings
- Modern React patterns and hooks
- Make sure you have Node.js (v18 or higher) installed
- Clone this repository
- Run
npm installto install dependencies - Run
npm run devto start the development server - Open your browser and navigate to
http://localhost:5173
This project is created for demonstration purposes.