AI features
This page covers the two AI-powered features in the school platform: study unit generation that turns simple ideas into cross-curricular learning adventures, and Ask Bob, an interactive Q&A assistant with full conversation history.
School Platform series
- School Platform
- Architecture
- AI features - You are here
- Calendar integration
- Deployment
AI study units
Study units allow a parent or student to share a learning idea and have AI expand it into a structured set of activities spanning multiple curriculum areas, tailored for the student's engagement level.
For example, "Today we fixed the irrigation system in the backyard" becomes a themed unit called "Water Systems: From Backyard to Broadacres" with activities across Technologies, Science, Maths, English, and HASS.
How generation works
The AI generates:
- Title - a catchy, engaging name for the unit
- Description - 2-3 sentences explaining the adventure
- AI message - a friendly response from the AI assistant
- Categories - 4-6 themed groups of activities (e.g. Build and Create, Experiments, Write About It)
- Options - 3-5 activity choices per category
Each activity includes a title, description, relevant learning area codes, estimated duration, and flags for whether it requires help, is outdoor, or is hands-on.
Personalised AI assistant
The AI has a configurable personality set in the app settings:
| Setting | Purpose |
|---|---|
| AI name | Name the AI responds to (default: "Bob") |
| AI personality | How the AI communicates (e.g. "friendly, enthusiastic, uses jokes and fun facts") |
| Student name | Used in prompts and responses for personalisation |
| Parent name | Referenced for activities requiring help |
| Target age | Content complexity level |
| Year level | Curriculum alignment |
All settings are configurable from the Settings page. The AI uses Australian English and relates content to the student's age and interests.
Preference memory
The system builds a memory of learning preferences over time:
| Category | Examples |
|---|---|
| Interests | "Loves building things", "Into Minecraft" |
| Dislikes | "Doesn't like long reading", "Bored by worksheets" |
| Learning style | "Hands-on learner", "Visual explanations work best" |
| Topics | "Interested in engineering", "Likes animals" |
Preferences can be explicit (directly added in Settings), inferred (AI detects patterns from activity selections), or rating-derived (built from pre/post activity ratings).
Selective regeneration
Users can request new options for any category without regenerating the entire unit. The AI receives the existing options to avoid repeats and generates 4-5 new alternatives while maintaining consistency with the seed idea.
Rating system
Activities support engagement tracking with emoji-based ratings:
| Rating | When | Purpose |
|---|---|---|
| Pre-rating | Before starting | Interest level |
| Post-rating | After completion | Enjoyment level |
| Engagement notes | After completion | What they liked or did not like |
Ratings feed back into the preference memory so the AI learns what works over time.

Ask Bob Q&A
Ask Bob is an interactive AI assistant that answers questions about any subject with personalised, age-appropriate responses. Conversations can be saved and continued later, with automatic categorisation by learning area.
Access points
| Location | Behaviour |
|---|---|
| Floating button (all pages) | Bottom-right; opens modal on desktop, bottom sheet on mobile |
| Sidebar link | Navigates to full-page chat interface |
| Study unit detail page | Collapsible "Ask Bob about this" section with topic context |
The floating button is hidden on /questions/ pages to avoid duplication.
What Bob provides
Each answer includes:
- An age-appropriate explanation using Australian English
- A fun fact or interesting tidbit
- The automatically detected learning area
- 2-3 related topics as clickable suggestions for follow-up
Conversation history
Full chat threads are persisted in the database:
- Conversations group messages with a title, learning area, and favourite status
- Messages store both user questions and AI responses with metadata
- Conversations can be continued later with new messages
- History view groups conversations by learning area with expand/collapse
When asking from a study unit page, the study unit title is automatically passed as context so Bob can give more relevant answers.

AI configuration
Both features use the same OpenAI integration:
| Setting | Default | Purpose |
|---|---|---|
| Model (quality) | GPT-4o | Study unit generation, creative content |
| Model (speed) | GPT-4o-mini | Quick Q&A responses |
| JSON mode | Enabled | Structured output for study unit generation |
| Lazy initialisation | Yes | Client created on first use, not at module load |