Project Overview
The Academic Performance App is a comprehensive full-stack iOS application that combines Swift/SwiftUI frontend with a Node.js/Express.js backend, integrating OpenAI's GPT-4o-mini for intelligent features. The app helps students track grades, simulate "what-if" scenarios, and optimize their academic performance through AI-powered insights.
Started in July 2025 and still actively developing, this project demonstrates advanced mobile development skills, API integration, natural language processing, and real-world problem-solving for academic optimization.
Key Features
AI Syllabus Parsing
Upload syllabi (PDF/images) and use Apple's Vision framework with OpenAI GPT-4o-mini to extract course structure, assignments, and grading breakdowns automatically.
Grade Tracking & Analytics
Track assignments and grades across multiple courses with real-time GPA calculation and visual performance analytics.
What-If Grade Simulator
Run predictive scenarios to see how different assignment scores affect your final grade, helping prioritize study efforts.
Canvas LMS Integration
Connect directly to Canvas LMS to automatically sync course data, assignments, and grades.
Natural Language Processing
Chat with GPT-4o-mini to ask questions about your grades, get study recommendations, and receive personalized academic insights.
Effort Analysis
Identify which assignments have the biggest impact on your final grade to optimize time allocation.
Technical Implementation
Frontend (iOS)
Swift
SwiftUI
Core Data
Vision Framework
PDFKit
- SwiftUI Architecture: Modern declarative UI with custom components and reusable views
- Core Data: Local persistence for courses, assignments, and user preferences
- Document Processing: Integrated Vision framework for OCR and PDFKit for document parsing
- API Communication: RESTful API calls to backend server with async/await patterns
Backend (Node.js)
Node.js
Express.js
OpenAI API
Canvas LMS API
REST Architecture
- Express.js Server: RESTful API endpoints for syllabus parsing, grade analysis, and chat functionality
- OpenAI Integration: GPT-4o-mini for intelligent syllabus parsing, structured data extraction, and conversational AI
- Canvas API: OAuth integration to fetch course data, assignments, and grades automatically
- Prompt Engineering: Custom prompts for accurate syllabus parsing and multi-modal document processing
Deployment
AWS
Render
TestFlight
- Cloud Hosting: Backend deployed on Render with environment variable management
- iOS Distribution: Beta testing via TestFlight for continuous user feedback
- Secure API: Proxy architecture to protect API keys and ensure secure communication
How It Works
1. Syllabus Upload & Parsing
Students upload their course syllabus as a PDF or image. The app uses Apple's Vision framework to extract text via OCR, then sends the content to the backend server. OpenAI's GPT-4o-mini processes the syllabus to extract:
- Course name and instructor information
- Grading breakdown (e.g., Exams 40%, Homework 30%, Projects 30%)
- Individual assignments with due dates and point values
- Custom grading scales (A = 93-100, B = 85-92, etc.)
2. Grade Tracking
Once the course structure is imported, students can:
- Enter assignment scores as they receive grades
- View real-time calculation of current grade and GPA
- See visual breakdowns of performance by category
- Track progress across multiple courses in one dashboard
3. Predictive Simulation
The "What-If" simulator allows students to:
- Enter hypothetical scores for upcoming assignments
- See how different scenarios impact their final grade
- Identify minimum scores needed to achieve target grades
- Make informed decisions about study time allocation
4. Canvas Integration
Students can optionally connect their Canvas LMS account to:
- Automatically import course lists and syllabi
- Sync assignment due dates and descriptions
- Pull grades directly from Canvas gradebook
- Keep everything up-to-date without manual entry
Challenges & Solutions
Challenge 1: Accurate Syllabus Parsing
Problem: Syllabi come in various formats with inconsistent structures, making it difficult to extract data reliably.
Solution: Developed custom prompt engineering strategies for GPT-4o-mini, providing specific JSON schemas for structured output. Combined OCR with multi-modal processing to handle both text-based PDFs and scanned images.
Challenge 2: Real-Time Grade Calculations
Problem: Complex grading schemes with weighted categories, dropped scores, and custom curves require sophisticated calculation logic.
Solution: Built a flexible GradeCalculator utility that handles various grading scenarios, including percentage-based and point-based systems, with support for dropping lowest scores.
Challenge 3: API Security
Problem: Storing OpenAI API keys directly in iOS app would expose them in the app binary.
Solution: Implemented a secure proxy architecture where the iOS app calls a backend server, which handles all OpenAI API communication with environment-protected keys.
Impact & Results
- Active Development: Continuously improving based on user feedback and adding new features
- Real-World Testing: Used by students at The Ohio State University for real course tracking
- Technical Growth: Gained expertise in iOS development, API integration, AI/ML, and full-stack architecture
- Problem-Solving: Created a practical solution that addresses a real need for students managing multiple courses
Future Enhancements
- Study schedule recommendations based on assignment deadlines and grade priorities
- Integration with additional LMS platforms (Blackboard, Moodle, etc.)
- Collaborative features for study groups and course comparison
- Advanced analytics and trend visualization over multiple semesters
- Machine learning models for personalized study recommendations