Tutor is a modern, AI-powered learning platform built as a Progressive Web Application (PWA). It provides an interactive and personalized learning experience with real-time AI assistance.
- AI-Powered Learning: Integration with OpenAI for intelligent tutoring and assistance
- Progressive Web App: Offline capabilities and native-like experience
- Real-time Notifications: Firebase Cloud Messaging for instant updates
- Responsive Design: Modern UI built with Tailwind CSS
- User Authentication: Secure authentication system
- Content Management: Dynamic content handling with Nuxt Content
- State Management: Efficient state management with Pinia
- Type Safety: Full TypeScript support throughout the application
- Framework: Nuxt.js 3
- Styling: Tailwind CSS
- State Management: Pinia
- TypeScript: For type safety
- Push Notifications: Firebase Cloud Messagin
- PWA Support: Vite PWA
- Image Optimization: Nuxt Image
- Authentication: Supabase Auth
- Runtime: Node.js
- Framework: Express.js
- Database: Supabase
- Push Notifications: Firebase Cloud Messagin
- Scheduling: node-cron
- Type Safety: TypeScript
- API Integration: OpenAI API
-
Main features: OAuth, Push Notification Subscription, Subject and Notification frequency selection, Questions list with answers.

-
App is accessible offline and you can always go through the questions you have already received.

-
App will send you up to 6 Push Notification using FCM based on topics selected during the day

- frontend is being re-deployed to GitHub Pages by GitHub Actions on each commit
- backend is being redeployed to railway.app on GitHub Actions completion
- Build the application:
cd frontend npm run build - The build process includes:
- TypeScript compilation
- Service Worker generation
- Environment configuration
- PWA manifest generation
- Build the backend:
cd backend npm run build - Start the server:
npm start
SUPABASE_URL: Supabase project URLSUPABASE_KEY: Supabase API keyVAPID_KEY: Web Push VAPID key- Firebase configuration variables
MODE: Application mode (development/production)
- Database connection details
- API keys
- Authentication credentials
- Offline support
- Push notifications
- App-like experience
- Automatic updates
- Caching strategies for:
- Static assets
- API responses
- User preferences
- Subject data
- Secure authentication flow
- Environment variable protection
- API key management
- CORS configuration
- Type-safe API endpoints
cd frontend
npm install
npm run devcd backend
npm install
npm run devISC License
Contributions are welcome! Please feel free to submit a Pull Request.