Neurotrack is an innovative platform that leverages artificial intelligence to support the detection, assessment, and management of neurodevelopmental conditions including Autism Spectrum Disorder (ASD), Attention Deficit Hyperactivity Disorder (ADHD), and various learning difficulties. The platform connects patients/clients with qualified therapists through two dedicated applications, streamlining the assessment, consultation, and therapy management process.
https://www.figma.com/design/bqKZn8UnfkyLbxaaWzSKtp/neurotrack?node-id=0-1&t=ipx4aQhq1BGIXsTb-1
Neurotrack aims to:
- Automate preliminary screening assessments for neurodevelopmental conditions
- Connect individuals with qualified therapists based on assessment results
- Facilitate personalized education and therapy plans
- Track therapy progress using data-driven approaches
- Empower patients/caregivers to actively participate in the therapy process
- Flutter (for both the Apps)
- Supabase (for backend)
This README provides instructions for setting up and running the Neurotrack patient and therapist apps, as well as configuring Supabase.
Navigate to the patient app directory:
cd patient
Install dependencies:
flutter pub get
Run the app:
flutter run
Navigate to the therapist app directory:
cd therapist
Install dependencies:
flutter pub get
Run the app:
flutter run
Follow these steps to set up Supabase and Google Cloud Console for authentication.
- Go to Supabase, sign up/log in, and create a New Project.
- Set a Project Name and Database Password (store it securely).
- In Project Settings > API, find:
- SUPABASE_URL (Project URL)
- SUPABASE_ANON_KEY (use the anon public key)
- Visit Google Cloud Console, sign in, and create a New Project.
- Go to APIs & Services > Credentials > + CREATE CREDENTIALS > OAuth Client ID.
- Configure OAuth Consent Screen (set App Name, Email, and add scopes:
email
,profile
,openid
). - Choose Web Application, and under:
-
Authorized JavaScript Origins, enter your Supabase URL.
https://your-project-id.supabase.co
-
Authorized Redirect URIs, add:
https://your-project-id.supabase.co/auth/v1/callback
-
- Click Create to get the Client ID and Client Secret.
- Go to OAuth Consent Screen > Test Users and add your email.
Note: Replace your-project-id with your project id from Supabase: Project Settings (Left panel) -> Project Id
- In Supabase Dashboard > Authentication > Providers, enable Google.
- Enter Client ID and Client Secret from Google Cloud Console.
- Click Save.
Create a .env
file in your project root and add:
# Supabase Credentials
SUPABASE_URL=your_project_url
SUPABASE_ANON_KEY=your_anon_key
# Google OAuth Credentials
GOOGLE_WEB_CLIENT_ID=your_web_client_id
GOOGLE_SECRET_KEY=your_secret_key
Replace placeholders with actual values from Supabase and Google Cloud Console.
- Start your app and test Google authentication.
- Check Supabase > Authentication > Users to verify logins.
- Users can sign up/sign in via Google/Apple authentication
- New users complete a profile setup specifying:
- Whether they're accessing for themselves (18+) or as a caregiver for a child
- Basic demographic information
- Any existing diagnoses or concerns
- Users select from multiple evidence-based assessment options tailored to different conditions (ASD, ADHD, etc.)
- Assessments include interactive questionnaires, possibly video recording of behaviors (optional)
- AI analyzes responses against established clinical baselines
- Results are presented with:
- Likelihood indicators for various conditions
- Severity assessment where applicable
- Clear disclaimer that results are preliminary and not diagnostic
- Recommendation on whether professional consultation is advisable
- If professional consultation is recommended, users can:
- View profiles of available therapists with relevant specializations
- Request consultation appointments
- Share assessment results directly with selected therapists
- After consultation and formal onboarding by a therapist:
- View personalized therapy plan
- Access scheduled therapy sessions (in-person or telehealth)
- Review session outcomes and progress reports
- Schedule new therapy sessions
- Access daily prescribed activities assigned by therapist
- Mark activities as completed
- Record observations or difficulties during activities
- View progress charts and achievement tracking
- Receive reminders for pending activities
- Professional sign up with credential verification
- License information
- Specialization details
- Professional certifications
- Background verification
- Admin approval process before full platform access
- Dashboard showing:
- New assessment results and consultation requests
- Current patient roster
- Upcoming appointments
- Pending reviews of therapy outcomes
- Review detailed assessment results from potential clients
- Accept or refer consultation requests
- Schedule initial consultations
- After consultation, formal onboarding process:
- Create personalized therapy plans
- Set therapy goals and milestones
- Schedule initial therapy sessions
- Assign preliminary daily activities
- Schedule and manage therapy sessions
- Record detailed session outcomes including:
- Goals addressed
- Progress made
- Techniques used
- Observations
- Next steps
- Create customized daily activities for each client
- Set duration and frequency
- Monitor completion rates and reported difficulties
- Adjust activities based on progress and feedback
- Generate detailed progress reports
- Track long-term development across key domains
- Visualize improvement trends
- Document milestone achievements