Qurio Bot is a cross-platform mobile application built using React Native and Expo that serves as an interactive, AI-powered tutor for students. Powered by the Groq Cloud API (Llama 3.1), the app delivers lightning-fast educational responses tailored to the user's preferred language, supporting English, Hindi, and Malayalam.
The project features an automated, animated SVG mascot named "Byte" who interacts with users through dynamic moods, text-to-speech feedback, and floating greetings.
- Multilingual NLP: Real-time academic assistance rendered accurately in English, Hindi, and Malayalam.
- True Interruption (Kill-Switch): Integrated advanced asynchronous architecture via
AbortControllerto instantly terminate AI text generation and voice streams, letting users pivot to new questions immediately. - Visual Learning: Native integration with device libraries to pick and upload images for visual context querying.
- Audio Synthesis: Cleaned text formatting rules (
.replace()filtering) to map AI text smoothly to native Text-to-Speech engines, preventing the system from reading formatting symbols aloud. - Export Tools: One-click local styling compilation that packages entire conversation strings into standard PDFs for instant distribution and study use.
- Local Persistence: Thread memory saved securely using on-device
AsyncStorageto preserve context across application reboots.
- Frontend Framework: React Native & Expo (Managed Workflow).
- AI Engine: Groq Cloud API Engine running the
llama-3.1-8b-instantmodel. - Vector/Graphics UI: Scalable Vector Graphics (SVG) built natively via code to handle complex rendering states.
- DevOps & Deployment: Expo Application Services (EAS) utilized for cloud compilation pipelines and Over-the-Air (OTA) runtime deployments.
This project was built utilizing an AI-Collaborative Pair-Programming approach. While I acted as the Lead Product Architect and handled system design, I leveraged AI capabilities to:
- Optimize asynchronous fetch streams and clean component state management.
- Programmatically calculate geometric coordinates for the custom SVG robot assets.
- Debug lifecycle handlers to cleanly switch between API calling states and interface layouts without native performance leaks.
To run this project locally, ensure you have Node.js and the Expo CLI environment configured, then follow these steps:
- Clone the repository:
git clone https://github.com/YOUR_USERNAME/quriobot.git
cd quriobot
2. **Install dependencies:**
```bash
npm install
- Configure Environment Variables:
Create an
.envfile in the root directory and add your Groq API Key:
EXPO_PUBLIC_GROQ_API_KEY=your_groq_api_key_here
4. **Start the local development server:**
```bash
npx expo start -c
Scan the QR code with your Expo Go app (Android) or Camera app (iOS) to test locally.
The application utilizes EAS Update branches for agile code distribution without forcing users to re-download standalone files for minor runtime revisions:
# Push small updates or layout revisions over-the-air
eas update --branch preview --message "Your update notes"