A multi-tenant AI chat platform that hosts specialized AI assistants, each accessible via different subdomains. Built with React, TypeScript, and Vite on the frontend, with a Next.js API backend.
This repository supports eight specialized chat applications:
Technical assistant for Stan probabilistic programming. Provides guidance and code examples based on the Stan User's Guide and Reference Manual.
Assistant for Neurodata Without Borders (NWB). Helps with PyNWB and related tools. Includes Jupyter integration for running Python code.
Explores and queries neuroscience datasets across DANDI Archive, OpenNeuro, and EBRAINS repositories. Features dataset search, NWB file analysis, and data visualization capabilities.
Specialized assistant for exploring specific Dandisets with Python/Jupyter integration.
Development testing assistant with Jupyter support.
Assistant for Figpack.
Assistant for the Brain Imaging Data Structure (BIDS) specification. Helps with organizing neuroimaging data according to BIDS standards.
Assistant for Hierarchical Event Descriptors (HED). Provides guidance on annotating events and data using HED tags, based on the HED specification and resources documentation.
- Frontend: React + Vite + TypeScript single-page application
- Backend: Next.js API (
nextjs/qp-api/) handling chat persistence and LLM requests - Routing: Subdomain-based assistant selection (e.g.,
stan-assistant.vercel.app) - LLM Integration: OpenRouter for model flexibility
- Storage: MongoDB for chat history
- Tools: Custom tools per assistant (document retrieval, Python execution, dataset queries)
# Frontend
npm install
npm run dev
# Backend API
cd nextjs/qp-api
npm install
npm run dev