Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

NeuroPulse MVP

AI-Powered Content Intelligence Platform

Predicts brain engagement from video/audio using Meta's TRIBE v2 model.


Quick Start (copy-paste these commands)

Step 1 — Clone & enter project

cd neuropulse

Step 2 — Backend Setup

cd backend

# Create virtual environment
python -m venv venv

# Activate it
# On Mac/Linux:
source venv/bin/activate
# On Windows:
venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Copy env file
cp .env.example .env

# Run the server
python app.py

Backend runs at: http://localhost:5000


Step 3 — Frontend Setup (new terminal)

cd frontend

# Install packages
npm install

# Start dev server
npm run dev

Frontend runs at: http://localhost:5173


Step 4 — Test it

  1. Open http://localhost:5173
  2. Click "Live Demo" to see it work without uploading a file
  3. Or upload any MP4/MP3 file to get real scores

Using Real TRIBE v2 (optional upgrade)

By default NeuroPulse uses our feature-based scoring engine. To plug in the real TRIBE v2 model:

# 1. Clone Meta's TRIBE v2 repo
git clone https://github.com/facebookresearch/TRIBE
cd TRIBE && pip install -e .

# 2. Download model weights (see their README)
# They provide weights at: https://ai.meta.com/research/publications/...

# 3. Set path in backend/.env
TRIBE_MODEL_PATH=/path/to/tribe_v2_weights

Project Structure

neuropulse/
├── backend/
│   ├── app.py              ← Flask API (start here)
│   ├── tribe_scorer.py     ← TRIBE v2 scoring pipeline
│   ├── requirements.txt    ← Python dependencies
│   └── .env.example        ← Environment variables template
│
└── frontend/
    ├── src/
    │   ├── App.jsx                      ← Main app + dashboard layout
    │   ├── components/
    │   │   ├── UploadZone.jsx           ← File upload UI
    │   │   ├── ScoreCard.jsx            ← Animated score ring + stats
    │   │   ├── Heatmap.jsx              ← Per-segment engagement chart
    │   │   └── Suggestions.jsx          ← AI improvement cards
    │   └── index.css                    ← Global dark theme styles
    ├── index.html
    ├── vite.config.js
    └── package.json

API Endpoints

Method Endpoint Description
POST /api/score Upload file, get brain engagement
GET /api/demo Get demo scores (no upload needed)
GET /api/health Check server + model status

Example API call

curl -X POST http://localhost:5000/api/score \
  -F "file=@your_video.mp4"

Example Response

{
  "status": "success",
  "overall_score": 72.4,
  "peak_score": 88.1,
  "low_score": 31.2,
  "consistency": 68.5,
  "retention": 74.0,
  "segment_scores": [58.2, 65.4, 71.0, 88.1, 82.3, ...],
  "suggestions": [
    {
      "type": "warning",
      "area": "Opening Hook",
      "icon": "",
      "message": "First segment score is 58/100. Add high-motion visuals..."
    }
  ]
}

Team Task Split (1-2 days)

Person 1 + 2 — Backend / ML

  • Set up Flask server (app.py)
  • Test scoring pipeline with a sample video
  • (Optional) Integrate real TRIBE v2 weights
  • Test all API endpoints

Person 3 + 4 — Frontend

  • Run frontend and connect to backend
  • Test upload flow end-to-end
  • Polish UI / fix any layout issues
  • Prepare demo video for hackathon presentation

Tech Stack

  • Meta TRIBE v2 — Brain activation prediction model (open-source)
  • Flask — Python backend API
  • React + Vite — Frontend
  • Recharts — Engagement heatmap chart
  • librosa — Audio feature extraction
  • OpenCV — Video frame processing

NeuroPulse · Technoverse Hackathon 2026 · Communications, Media & Technology

About

Ongoing Project

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages