Selected project

InfraRAT

A research platform for exploring 20,000+ experimental sessions in behavioural neuroscience, built with McMaster’s Szechtman Lab. Normalized session metadata connects back to original research files for querying and analysis.

  • Python
  • FastAPI
  • PostgreSQL
  • Docker
Music: “Pewter Lamp” by Blue Dot Sessions, licensed under CC BY-NC 4.0.

Making 20,000+ experimental sessions easier to explore

McMaster University’s Szechtman Lab maintains a collection of more than 20,000 experimental sessions in rat behavioural research. The public data was spread across video, tracking, and supplementary files that were difficult to search together.

InfraRAT makes the archive searchable through normalized session metadata linked to the original files in the Federated Research Data Repository (FRDR). Researchers can query and filter sessions, compare groups, visualize behaviour, inspect individual sessions, and download the underlying files.

Querying the archive in plain language

The natural-language interface lets researchers describe their needs in everyday terms. Ask mode is optimized for a conversational response. Select mode exposes the generated query and matching sessions for review, then lets researchers inspect and download the associated source files.

01

Find relevant sessions

Filter by treatment, regimen, brain manipulation, apparatus, session type, and available file formats.

02

Compare behaviour

Build bar charts and heatmaps, or open multi-panel dashboards for established compulsive-checking measures.

03

Inspect one session closely

Load a session to review its metadata, tracked points, path trajectory, distance travelled, and checking summaries.

04

Download the underlying files

Map sessions selected through a query or inventory filter back to the corresponding CSV, image, and video files in FRDR.

InfraRAT analysis toolbox showing session metadata, tracked data points, a path image, an animated trajectory, and summary measures
The session toolbox brings raw tracking points, movement paths, and behavioural summaries into one view.

Connecting metadata to the research archive

React and TypeScript provide the browser interface. Nginx serves the frontend and routes requests to FastAPI, which handles querying and analysis. PostgreSQL stores normalized session metadata linked to the source files in FRDR. Docker packages the frontend, API, and database as a reproducible three-service stack.

InfraRAT architecture connecting a React frontend through Nginx to FastAPI, PostgreSQL, visualization and natural-language services, Google Vertex AI, FRDR, and GitHub Actions
The deployed architecture, from the browser interface and analysis services to the research file archive.
InfraRAT dashboard comparing frequency, length, recurrence, and duration measures across experimental groups
A multi-panel dashboard compares established behavioural measures across experimental groups.
InfraRAT visualization gallery with bar chart, heatmap, spatial heatmap, velocity profile, and query visualization tools
The visualization tools include bar charts, heatmaps, spatial heatmaps, and velocity profiles.

Built with the Szechtman Lab

InfraRAT was created by a five-person McMaster Software Engineering capstone team in collaboration with Dr. Henry Szechtman and Dr. Anna Dvorkin-Gheva. Their input shaped the workflows we prioritized: finding a useful cohort, inspecting an individual session, comparing experimental conditions, and returning to the underlying files.