Skip to content

JamesMcDaniel04/SprintIQ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,236 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SprintIQ - AI-Powered Sprint Intelligence & Team Ops Copilot

SprintIQ is an intelligent platform that aggregates cross-platform development activity, identifies execution risks before they become blockers, and provides actionable intelligence for sprint planning and team optimization.

Features

  • Real-time AI Copilot: Automatically analyzes team activity across GitHub, Slack, and project management tools
  • Sprint Intelligence: AI-powered sprint summaries and performance analytics
  • Risk Detection: Identifies potential blockers before they impact delivery
  • Team Health Monitoring: Tracks team performance and collaboration metrics
  • Automated Reporting: Daily digests and sprint retrospectives
  • Seamless Integrations: GitHub, Slack, Linear, JIRA, and more

Tech Stack

  • Frontend: Next.js 15 with TypeScript, Tailwind CSS, Radix UI
  • State Management: Zustand + TanStack Query
  • Backend: Node.js with Express, PostgreSQL with Prisma ORM
  • Authentication: Supabase Auth (JWT) with GitHub OAuth
  • Integrations: GitHub API, Slack Web API, Linear GraphQL
  • AI/ML: OpenAI GPT-4, Vector embeddings for semantic search
  • Visualization: Recharts for analytics dashboards

Quick Start

Prerequisites

  • Node.js 18+
  • npm or yarn
  • PostgreSQL database
  • Supabase project with auth enabled (URL, anon key, service role key)

Installation

  1. Clone and install dependencies

    git clone <repository-url>
    cd sprintiq
    npm install
  2. Environment setup

    cp .env.example .env.local
    # Edit .env.local with your configuration:
    # - Supabase project URL and keys
    # - PostgreSQL database URL
    # - GitHub token for integrations
    # - ENCRYPTION_SECRET for secure token storage
    # - OpenAI API key (optional)
  3. Database setup

    # Generate Prisma client
    npx prisma generate
    
    # Run database migrations
    npx prisma migrate dev
  4. Start development servers

    # Start both frontend and backend
    npm run dev
    
    # Or start separately:
    npm run dev:next    # Frontend on port 3000
    npm run dev:server  # Backend on port 3001
  5. Open application Navigate to http://localhost:3000

Development Commands

# Start development server with Turbopack
npm run dev

# Build for production
npm run build

# Start production server  
npm start

# Type checking
npx tsc --noEmit

# Linting
npm run lint

# Firebase emulators (if using Firebase)
firebase emulators:start

Configuration

Environment Variables

# Firebase (optional for local dev)
NEXT_PUBLIC_FIREBASE_API_KEY=your-api-key
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id

# GitHub Integration
GITHUB_CLIENT_ID=your-github-client-id
GITHUB_CLIENT_SECRET=your-github-client-secret
GITHUB_TOKEN=your-github-token

# Slack Integration  
SLACK_BOT_TOKEN=your-slack-bot-token
SLACK_SIGNING_SECRET=your-slack-signing-secret

# OpenAI for AI features
OPENAI_API_KEY=your-openai-api-key

# NextAuth
NEXTAUTH_SECRET=your-nextauth-secret
NEXTAUTH_URL=http://localhost:3000

# Internal service authentication
# Used to secure direct HTTP access to the scheduler and orchestrator services.
SCHEDULER_AUTH_TOKEN=generate-a-strong-random-string
ORCHESTRATOR_AUTH_TOKEN=generate-a-strong-random-string
INTERNAL_API_KEY=optional-shared-fallback-token

Both scheduler and orchestrator endpoints expect callers to present the secret via the X-Scheduler-Token or X-Orchestrator-Token header (or an Authorization: Bearer ... token). In production the services reject requests that do not include the configured secret. For local development the middleware logs a warning and allows the request if the token is not configured, enabling a smoother bootstrap experience.

LangSmith Observability

SprintIQ ships with LangSmith tracing for both LangGraph workflows and LangChain-powered agents. Add the following environment variables (already scaffolded in .env.example and generated by ./setup-env.sh) to stream telemetry into your LangSmith project:

  • LANGCHAIN_API_KEY – LangSmith API key (lsv2_…).
  • LANGCHAIN_PROJECT – Project namespace for your runs (e.g., SprintIQ).
  • LANGCHAIN_ENDPOINT – LangSmith API base, defaults to https://api.smith.langchain.com.
  • LANGCHAIN_TRACING_V2 – Set to true to enable LangChain/LangGraph callbacks.

Once configured, planner/actor/respond phases and tool calls appear in LangSmith. You can validate connectivity locally via node scripts/test-langsmith-tracer.js or by hitting GET /api/health/langsmith after the server boots.

Firebase Setup (Optional)

For full functionality including authentication and real-time features:

  1. Create a Firebase project
  2. Enable Firestore, Authentication, and Functions
  3. Download service account key
  4. Configure environment variables

API Documentation

Health Check

GET /api/health

GitHub Integration

GET /api/integrations/github/repositories
Authorization: Bearer <github-token>

Core Features Status

  • ✅ Landing page with feature showcase
  • ✅ Dashboard layout with navigation
  • ✅ Overview cards with team metrics
  • ✅ Recent activity feed
  • ✅ AI insights panel with recommendations
  • ✅ GitHub integration foundation
  • ✅ Slack integration foundation
  • ✅ TypeScript interfaces and types
  • ✅ Zustand state management
  • ✅ Responsive design with Tailwind CSS

Roadmap

Phase 1: MVP (Current)

  • Core dashboard and UI
  • GitHub/Slack integration foundation
  • Basic sprint tracking
  • Simple AI insights

Phase 2: Enhanced Analytics

  • Advanced team health scoring
  • Predictive sprint analytics
  • Custom dashboard widgets
  • Automated retrospective reports

Phase 3: Enterprise Features

  • SSO authentication
  • Advanced security controls
  • Custom integrations API
  • White-label options

Architecture

src/
├── app/                 # Next.js App Router pages
│   ├── api/            # API routes
│   ├── dashboard/      # Dashboard pages
│   └── page.tsx        # Landing page
├── components/         # React components
│   ├── ui/            # Reusable UI components
│   ├── layout/        # Layout components
│   └── dashboard/     # Dashboard-specific components
├── lib/               # Utilities and integrations
│   ├── integrations/  # Third-party service integrations
│   ├── firebase.ts    # Firebase configuration
│   └── utils.ts       # Common utilities
├── stores/            # Zustand state stores
├── types/             # TypeScript type definitions
└── hooks/             # Custom React hooks

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support and questions:


Built with ❤️ for engineering teams who want to ship faster and smarter.# Force deployment trigger

About

Real-time AI Copilot: Automatically analyzes team activity across GitHub, Slack, and project management tools Sprint Intelligence: AI-powered sprint summaries and performance analytics Risk Detection: Identifies potential blockers before they impact delivery Team Health Monitoring: Tracks team performance and collaboration metrics Automated Reporti

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors