<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://giraf.cs.aau.dk/feed.xml" rel="self" type="application/atom+xml" /><link href="https://giraf.cs.aau.dk/" rel="alternate" type="text/html" /><updated>2026-07-20T09:01:21+00:00</updated><id>https://giraf.cs.aau.dk/feed.xml</id><title type="html">GIRAF</title><subtitle>Digital tools for autistic children - developed at Aalborg University since 2011</subtitle><author><name>Nicolai Brodersen Hansen</name></author><entry><title type="html">Fall 2025 Semester Complete: New Features for Foodplanner and VTA</title><link href="https://giraf.cs.aau.dk/2025/12/20/fall-2025-semester-complete/" rel="alternate" type="text/html" title="Fall 2025 Semester Complete: New Features for Foodplanner and VTA" /><published>2025-12-20T00:00:00+00:00</published><updated>2025-12-20T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2025/12/20/fall-2025-semester-complete</id><content type="html" xml:base="https://giraf.cs.aau.dk/2025/12/20/fall-2025-semester-complete/"><![CDATA[<p>The Fall 2025 semester has concluded with significant improvements to both Foodplanner and Visual Tangible Artefacts (VTA). Student teams from Aalborg University worked closely with Egebakken Specialskole throughout the semester to ensure these updates address real needs.</p>

<h2 id="foodplanner-improvements">Foodplanner Improvements</h2>

<p>The Foodplanner app now includes a <strong>search function</strong> that helps caregivers find ingredients quickly when planning meals. Instead of scrolling through long lists, users can type to filter and find what they need instantly.</p>

<p>The team also conducted <strong>usability tests</strong> with participants to identify areas for improvement. These tests revealed valuable insights about how the app can better support meal planning routines.</p>

<h2 id="vta-updates">VTA Updates</h2>

<p>Visual Tangible Artefacts received several important updates:</p>

<ul>
  <li><strong>Remote viewing</strong> - Parents and teachers can now view a child’s communication board in real-time, making it easier to stay connected throughout the day</li>
  <li><strong>Multiple boards</strong> - Children can now have different boards for different contexts, such as home and school</li>
  <li><strong>Improved welcome screen</strong> - The opening experience has been refined based on feedback about processing time</li>
</ul>

<h2 id="continuous-partnership">Continuous Partnership</h2>

<p>Both teams maintained close contact with Egebakken throughout the semester, conducting interviews and incorporating feedback directly into the development process. This collaboration ensures GIRAF applications continue to meet the real needs of children and their caregivers.</p>

<p>Thank you to all the students who contributed this semester.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[The Fall 2025 semester has concluded with significant improvements to both Foodplanner and Visual Tangible Artefacts (VTA). Student teams from Aalborg University worked closely with Egebakken Specialskole throughout the semester to ensure these updates address real needs.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Foodplanner Gets Smarter Search</title><link href="https://giraf.cs.aau.dk/2025/12/15/foodplanner-search-usability/" rel="alternate" type="text/html" title="Foodplanner Gets Smarter Search" /><published>2025-12-15T00:00:00+00:00</published><updated>2025-12-15T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2025/12/15/foodplanner-search-usability</id><content type="html" xml:base="https://giraf.cs.aau.dk/2025/12/15/foodplanner-search-usability/"><![CDATA[<p>Finding the right ingredients in Foodplanner just got easier. The Fall 2025 student team has added a <strong>search and filter function</strong> that helps caregivers quickly locate food items when creating meal plans.</p>

<h2 id="how-it-helps">How It Helps</h2>

<p>When planning meals for children with selective eating habits, caregivers often work with specific foods the child is comfortable with. Previously, this meant scrolling through lists to find each item. Now, typing a few letters instantly filters the list to show matching ingredients.</p>

<p>This small improvement can make a real difference in busy care settings where time is limited and efficiency matters.</p>

<h2 id="tested-with-real-users">Tested with Real Users</h2>

<p>The team didn’t just build this feature - they tested it. Usability tests helped identify how people actually use the app and where they encounter difficulties. Feedback from these tests led to additional refinements, such as clearer visual feedback when selecting items.</p>

<h2 id="built-in-partnership">Built in Partnership</h2>

<p>These improvements came from ongoing collaboration with <a href="https://egebakken.aula.dk/">Egebakken Specialskole</a>, whose staff provided insights into daily routines and practical needs. This partnership ensures Foodplanner continues to evolve based on real-world use.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[Finding the right ingredients in Foodplanner just got easier. The Fall 2025 student team has added a search and filter function that helps caregivers quickly locate food items when creating meal plans.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">VTA Now Supports Remote Viewing for Parents and Teachers</title><link href="https://giraf.cs.aau.dk/2025/12/10/vta-remote-sessions/" rel="alternate" type="text/html" title="VTA Now Supports Remote Viewing for Parents and Teachers" /><published>2025-12-10T00:00:00+00:00</published><updated>2025-12-10T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2025/12/10/vta-remote-sessions</id><content type="html" xml:base="https://giraf.cs.aau.dk/2025/12/10/vta-remote-sessions/"><![CDATA[<p>Visual Tangible Artefacts (VTA) now allows parents and teachers to view a child’s communication board remotely. This new feature helps adults stay connected with the children they support, even when they’re not in the same room.</p>

<h2 id="staying-connected">Staying Connected</h2>

<p>For children who use visual communication boards, consistency between home and school is important. With remote viewing, a parent at home can see what their child is communicating at school, and vice versa. This creates opportunities for better coordination between caregivers.</p>

<p>The feature includes privacy controls - children can accept or decline viewing requests, giving them agency over who sees their board.</p>

<h2 id="multiple-boards-for-different-contexts">Multiple Boards for Different Contexts</h2>

<p>The update also introduces <strong>multi-board support</strong>. Children can now have separate boards for different settings or purposes. A child might have one board for daily routines and another for expressing feelings, each tailored to their specific needs.</p>

<h2 id="designed-for-how-children-process-information">Designed for How Children Process Information</h2>

<p>Based on research and feedback from Egebakken, the team also improved the welcome screen. The new design gives children more time to process what they see, respecting the different pace at which autistic children may take in visual information.</p>

<p>These updates reflect GIRAF’s commitment to building tools that truly work for the children who use them.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[Visual Tangible Artefacts (VTA) now allows parents and teachers to view a child’s communication board remotely. This new feature helps adults stay connected with the children they support, even when they’re not in the same room.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Fall 2025 Semester Begins</title><link href="https://giraf.cs.aau.dk/2025/09/01/fall-2025-semester-begins/" rel="alternate" type="text/html" title="Fall 2025 Semester Begins" /><published>2025-09-01T00:00:00+00:00</published><updated>2025-09-01T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2025/09/01/fall-2025-semester-begins</id><content type="html" xml:base="https://giraf.cs.aau.dk/2025/09/01/fall-2025-semester-begins/"><![CDATA[<p>A new semester of GIRAF development is underway! This fall, student teams will continue work on Foodplanner and Visual Tangible Artefacts (VTA).</p>

<h2 id="focus-areas">Focus Areas</h2>

<ul>
  <li><strong>Foodplanner</strong>: Improving the meal planning interface and adding new features based on feedback from Egebakken</li>
  <li><strong>VTA</strong>: Expanding AI image generation capabilities and refining the physical-digital interaction model</li>
</ul>

<h2 id="getting-involved">Getting Involved</h2>

<p>New students can find onboarding resources in our <a href="https://aau-giraf.github.io/wiki/Onboarding/">wiki</a>.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[A new semester of GIRAF development is underway! This fall, student teams will continue work on Foodplanner and Visual Tangible Artefacts (VTA).]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Introducing GIRAF Core — A Shared Backend for the Platform</title><link href="https://giraf.cs.aau.dk/2025/02/13/introducing-giraf-core/" rel="alternate" type="text/html" title="Introducing GIRAF Core — A Shared Backend for the Platform" /><published>2025-02-13T00:00:00+00:00</published><updated>2025-02-13T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2025/02/13/introducing-giraf-core</id><content type="html" xml:base="https://giraf.cs.aau.dk/2025/02/13/introducing-giraf-core/"><![CDATA[<p>GIRAF has grown from a single app into a platform with multiple applications — Weekplanner, Food Planner, and Visual Tangible Artefacts (VTA). Each app has its own backend, its own database, and its own deployment. But they all share the same fundamental concepts: users, organizations, citizens, pictograms.</p>

<p>Until now, each backend managed these shared concepts independently. That means duplicated user tables, duplicated auth logic, and no single place where “Alice is an admin at Egebakken” lives as a fact. If a new app joins the platform, it has to reimplement all of that from scratch.</p>

<p><strong>GIRAF Core</strong> fixes this. It’s a single shared service that owns the common domain data and authentication for the entire platform.</p>

<h2 id="how-it-works">How It Works</h2>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>┌─────────────────────────────────────────────────────────────────┐
│                    Mobile Apps (Flutter)                        │
│   Weekplanner          Food Planner          VTA               │
└──────┬──────────────────────┬───────────────────┬──────────────┘
       │ domain data          │ domain data       │ domain data
       ▼                      ▼                   ▼
┌──────────────┐   ┌──────────────┐   ┌──────────────┐
│ Weekplanner  │   │ Food Planner │   │ VTA Backend  │
│ Backend      │   │ Backend      │   │              │
│ (.NET / C#)  │   │ (TBD)        │   │ (TBD)        │
│ Activities,  │   │ Meals, Menus │   │ Exercises,   │
│ Schedules    │   │ Nutrition    │   │ Progress     │
└──────┬───────┘   └──────┬───────┘   └──────┬───────┘
       │                  │                   │
       │  users, orgs, citizens, pictograms   │
       ▼                  ▼                   ▼
┌─────────────────────────────────────────────────────────────────┐
│                       GIRAF Core API                            │
│                    (Django + Ninja, Python)                      │
│                                                                 │
│  Auth/JWT │ Users │ Orgs │ Citizens │ Grades │ Pictos │ Invites │
└─────────────────────────┬───────────────────────────────────────┘
                          │
                    ┌─────▼─────┐
                    │  Core DB  │
                    │ PostgreSQL│
                    └───────────┘
</code></pre></div></div>

<p>The idea is straightforward:</p>

<ul>
  <li><strong>Apps authenticate with Core.</strong> A mobile app calls Core’s <code class="language-plaintext highlighter-rouge">/token/pair</code> endpoint and gets back a JWT.</li>
  <li><strong>JWTs carry org roles.</strong> The token payload includes something like <code class="language-plaintext highlighter-rouge">{"1": "owner", "5": "member"}</code>, so any app backend can check permissions locally without calling Core again.</li>
  <li><strong>Each app backend only stores its own domain data.</strong> Weekplanner stores schedules and activities. VTA stores exercises and progress. Neither needs to know about users or orgs — that’s Core’s job.</li>
  <li><strong>Core is the single source of truth.</strong> One user account, one organization, one citizen record. Shared across every app on the platform.</li>
</ul>

<h2 id="what-it-manages">What It Manages</h2>

<p>Core handles seven areas that every GIRAF app needs:</p>

<ul>
  <li><strong>Users</strong> — registration, profiles, authentication</li>
  <li><strong>Organizations</strong> — the institutions (schools, care facilities) using GIRAF</li>
  <li><strong>Members</strong> — who belongs to which org, and with what role (owner, admin, member)</li>
  <li><strong>Citizens</strong> — the children who use the apps</li>
  <li><strong>Grades</strong> — groupings of citizens within an org</li>
  <li><strong>Pictograms</strong> — the visual symbols used across the platform, both global and org-specific</li>
  <li><strong>Invitations</strong> — letting admins invite new users to their organization</li>
</ul>

<h2 id="tech-stack">Tech Stack</h2>

<p>We went with Django + Django Ninja for the API layer and PostgreSQL for the database. The codebase follows a consistent pattern across every feature: <code class="language-plaintext highlighter-rouge">models.py</code> → <code class="language-plaintext highlighter-rouge">schemas.py</code> → <code class="language-plaintext highlighter-rouge">services.py</code> → <code class="language-plaintext highlighter-rouge">api.py</code>. Business logic lives in the service layer, never directly in API endpoints.</p>

<p>Tests run against SQLite in-memory for speed, and the whole thing can be spun up with a single <code class="language-plaintext highlighter-rouge">docker compose up</code>.</p>

<h2 id="whats-next">What’s Next</h2>

<p>The Weekplanner backend already has its own user and org tables. The migration path is to gradually point it at Core instead. New features and new apps should build against Core from the start, rather than reinventing shared domain concepts yet again.</p>

<p>If you’re working on GIRAF this semester and want to poke around, the interactive API docs are at <code class="language-plaintext highlighter-rouge">http://localhost:8000/api/v1/docs</code> once you have the service running.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[GIRAF has grown from a single app into a platform with multiple applications — Weekplanner, Food Planner, and Visual Tangible Artefacts (VTA). Each app has its own backend, its own database, and its own deployment. But they all share the same fundamental concepts: users, organizations, citizens, pictograms.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Fall 2024 Handover Complete</title><link href="https://giraf.cs.aau.dk/2024/12/20/fall-2024-handover-complete/" rel="alternate" type="text/html" title="Fall 2024 Handover Complete" /><published>2024-12-20T00:00:00+00:00</published><updated>2024-12-20T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2024/12/20/fall-2024-handover-complete</id><content type="html" xml:base="https://giraf.cs.aau.dk/2024/12/20/fall-2024-handover-complete/"><![CDATA[<p>The Fall 2024 semester has concluded with successful handovers from all project groups.</p>

<h2 id="highlights">Highlights</h2>

<ul>
  <li><strong>Foodplanner</strong> teams delivered major UI improvements and backend stability fixes</li>
  <li><strong>VTA</strong> teams established the foundational architecture and AI integration</li>
  <li>Documentation updated across all repositories</li>
</ul>

<p>Thank you to all the students who contributed this semester!</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[The Fall 2024 semester has concluded with successful handovers from all project groups.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">VTA Gets AI-Powered Image Generation</title><link href="https://giraf.cs.aau.dk/2024/11/01/vta-ai-integration/" rel="alternate" type="text/html" title="VTA Gets AI-Powered Image Generation" /><published>2024-11-01T00:00:00+00:00</published><updated>2024-11-01T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2024/11/01/vta-ai-integration</id><content type="html" xml:base="https://giraf.cs.aau.dk/2024/11/01/vta-ai-integration/"><![CDATA[<p>The Visual Tangible Artefacts project now includes AI-powered image generation, allowing caregivers to create personalized pictograms for individual children.</p>

<p>This feature addresses a key need identified by our partners at Egebakken: the ability to quickly generate visual aids that match each child’s specific context and preferences.</p>

<p><a href="/apps/">Learn more about VTA</a></p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[The Visual Tangible Artefacts project now includes AI-powered image generation, allowing caregivers to create personalized pictograms for individual children.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Welcome Fall 2024 Students</title><link href="https://giraf.cs.aau.dk/2024/09/01/new-semester-new-teams/" rel="alternate" type="text/html" title="Welcome Fall 2024 Students" /><published>2024-09-01T00:00:00+00:00</published><updated>2024-09-01T00:00:00+00:00</updated><id>https://giraf.cs.aau.dk/2024/09/01/new-semester-new-teams</id><content type="html" xml:base="https://giraf.cs.aau.dk/2024/09/01/new-semester-new-teams/"><![CDATA[<p>Welcome to the new cohort of GIRAF developers! This semester we have teams from:</p>

<ul>
  <li>Software Engineering (5th semester)</li>
  <li>Information Technology</li>
  <li>Interaction Design</li>
</ul>

<p>This interdisciplinary collaboration will help us build better tools for children with autism.</p>

<p>Check out the <a href="https://aau-giraf.github.io/wiki/Onboarding/">onboarding guide</a> to begin.</p>]]></content><author><name>Nicolai Brodersen Hansen</name></author><summary type="html"><![CDATA[Welcome to the new cohort of GIRAF developers! This semester we have interdisciplinary teams building better tools for children with autism.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://giraf.cs.aau.dk/giraf-logo.png" /><media:content medium="image" url="https://giraf.cs.aau.dk/giraf-logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>