Skip to content

People intelligence platform analyzing cross-platform collaboration patterns via React/Rust stack with PostgreSQL, OpenSearch, Neo4j, OAuth integrations, and Kubernetes deployment.

Notifications You must be signed in to change notification settings

Rubix982/triage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Triage - People-Centric Knowledge Intelligence Platform

Triage has evolved into a revolutionary People-Centric Knowledge Intelligence Platform that transforms scattered organizational interactions into actionable collaboration insights. What started as a local-first Jira analysis tool now provides comprehensive people network intelligence across Jira, Google Workspace, and Slack, with advanced relationship mapping, expert discovery, and team optimization capabilities.

The platform runs as a cross-platform desktop app powered by Electron, React, TailwindCSS, and D3, backed by a Rust + Axum + DuckDB backend with sophisticated people graph analytics and OAuth integration for secure content access.

🎯 Core Innovation: Unlike traditional knowledge management systems that focus on documents, Triage puts people and their collaborative relationships at the center, answering critical questions like "Who knows what?", "Who works well together?", and "Where are our knowledge gaps?"


βš™οΈ Tech Stack

πŸŽ›οΈ Client (/client)

πŸ¦€ Server (/server)

  • Rust with Axum web framework
  • DuckDB for analytical SQL and local storage
  • OAuth 2.0 integration for Google Workspace and Slack
  • Cross-platform content extraction and relationship mapping
  • RESTful API for unified search and authentication

πŸ“ Project Structure

triage/
β”œβ”€β”€ client/               # Electron + React desktop UI
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ main.ts       # Electron main process
β”‚   β”‚   β”œβ”€β”€ index.tsx     # React entry point
β”‚   β”‚   β”œβ”€β”€ App.tsx       # Root React component
β”‚   β”‚   β”œβ”€β”€ styles/       # Tailwind input CSS
β”‚   β”‚   β”œβ”€β”€ backend/      # DuckDB logic (frontend)
β”‚   β”‚   β”œβ”€β”€ components/   # D3, charts, reusable UI
β”‚   β”‚   └── index.html    # Injected by Vite
β”‚   β”œβ”€β”€ dist-electron/    # Electron build output
β”‚   β”œβ”€β”€ tailwind.config.js
β”‚   β”œβ”€β”€ eslint.config.js  # ESLint v9+ flat config
β”‚   └── vite.config.ts    # Vite + Electron setup
β”‚
β”œβ”€β”€ server/               # Rust backend with Axum API server
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ main.rs       # Application entry point
β”‚   β”‚   β”œβ”€β”€ server.rs     # API routes and handlers
β”‚   β”‚   β”œβ”€β”€ people_graph.rs      # People identity resolution & network analysis
β”‚   β”‚   β”œβ”€β”€ people_integration.rs # Unified cross-platform people intelligence
β”‚   β”‚   β”œβ”€β”€ people_routes.rs     # People intelligence API endpoints
β”‚   β”‚   β”œβ”€β”€ enhanced_jira_extractor.rs   # Advanced Jira collaboration analysis
β”‚   β”‚   β”œβ”€β”€ enhanced_google_extractor.rs # Google Docs collaboration tracking
β”‚   β”‚   β”œβ”€β”€ enhanced_slack_extractor.rs  # Slack conversation dynamics
β”‚   β”‚   β”œβ”€β”€ unified_search.rs    # Cross-platform search engine
β”‚   β”‚   β”œβ”€β”€ content_storage.rs   # Unified content storage schema
β”‚   β”‚   β”œβ”€β”€ google_auth.rs       # Google OAuth integration
β”‚   β”‚   β”œβ”€β”€ slack_auth.rs        # Slack OAuth integration
β”‚   β”‚   β”œβ”€β”€ content_extractor.rs # Content extraction service
β”‚   β”‚   └── link_detector.rs     # Cross-platform link detection
β”‚   β”œβ”€β”€ docs/             # DuckDB feature docs
β”‚   └── misc/             # Sample issue data
β”‚
β”œβ”€β”€ docs/                 # Shared references
└── dist/                 # Final packaged output (auto-generated)

πŸš€ Getting Started

βœ… Prerequisites

  • Node.js + pnpm
  • Rust + cargo
  • DuckDB CLI (optional)

▢️ Client Setup

cd client
pnpm install
pnpm dev

This starts:

  • Electron main process
  • Vite dev server (with hot reloading)
  • Tailwind build watcher

🧹 Lint + Format

pnpm lint       # Run ESLint (flat config)
pnpm lint:fix   # Auto-fix
pnpm format     # Prettier write for all files

Note: Uses ESLint v9+ Flat Config (eslint.config.js), with support for:

β€’ TypeScript β€’ React + Hooks β€’ Tailwind class ordering β€’ Prettier conflict resolution

πŸ“¦ Build & Package App

pnpm build           # Build Vite renderer
pnpm dev:main        # Build Electron main process
pnpm run package     # Create .dmg, .exe, or .AppImage via electron-builder

πŸ¦€ Server Setup

cd server
cargo build
cargo run serve    # Start API server on http://127.0.0.1:3001

Available commands:

cargo run login           # Authenticate with Jira
cargo run projects        # Sync Jira projects and issues
cargo run serve          # Start web server with API endpoints

Run Rust unit tests:

cargo test

🌐 API Endpoints

People Intelligence πŸ§‘β€πŸ€β€πŸ§‘

  • POST /people/analyze - Extract people insights from content
  • GET /people/profile/{person_id} - Get comprehensive person profile
  • GET /people/recommendations/{person_id} - Get collaboration recommendations
  • GET /people/overview - Network statistics and top collaborators

Universal Search πŸ”

  • POST /api/search/unified - Cross-platform unified search
  • GET /api/search - Semantic search (legacy)

Authentication πŸ”

  • GET /api/auth/google - Initiate Google OAuth
  • GET /api/auth/slack - Initiate Slack OAuth
  • GET /api/auth/{platform}/callback - OAuth callback handler

Content Management πŸ“„

  • POST /api/content/extract - Trigger content extraction
  • GET /api/content/status - Extraction job status
  • GET /api/sync/status - Sync status dashboard

πŸ”‘ Key Features

πŸ‘₯ People Intelligence (NEW)

  • People Network Graph: Interactive D3 visualization of collaboration relationships
  • Expert Discovery: AI-powered search to find experts by topic, skill, or past contributions
  • Collaboration Timeline: Track knowledge transfer events and team dynamics over time
  • Team Insights Dashboard: Executive analytics on collaboration effectiveness and knowledge gaps
  • Cross-Platform Identity Resolution: Merge identities across Jira, Google, Slack (sarah.smith = ssmith = U123456)

🧠 Advanced Collaboration Analytics

  • Knowledge Transfer Detection: Identify when experts teach others and solutions get shared
  • Influence Scoring: Calculate authority based on problem-solving contributions and peer validation
  • Collaboration Patterns: Discover how teams actually work together across platforms
  • Knowledge Gap Analysis: Find critical expertise shortfalls with actionable recommendations
  • Solution Pattern Recognition: Surface "Sarah figured it out!" breakthrough moments

πŸ” Universal Knowledge Search

  • Cross-Platform Search: Unified search across Jira, Google Docs, Slack conversations, and more
  • Semantic Matching: AI-powered content similarity and relationship mapping
  • People-Filtered Results: Search by expertise areas, collaboration patterns, and influence metrics
  • Faceted Results: Organized by people, concepts, technologies, projects, and relationships

πŸ“Š Content Intelligence

  • Link Detection: Automatically discover and extract content from platform links in tickets
  • Knowledge Extraction: Identify concepts, technologies, and solution patterns
  • Relationship Mapping: Connect related content and people across different platforms
  • Engagement Analytics: Track usage, sharing, collaboration impact, and knowledge flow

πŸ” Secure Authentication

  • OAuth 2.0: Secure authentication with Google Workspace and Slack
  • Token Management: Automatic token refresh and secure storage
  • Permission-Aware: Respects platform access controls and sharing settings

πŸ“Š Current Status

People Intelligence: βœ… Complete - Full backend analytics with interactive frontend UI
Frontend: βœ… Complete - 5 specialized components with D3 visualizations and real-time processing
Backend: βœ… Complete - People graph, identity resolution, enhanced extractors, and API endpoints
OAuth: βœ… Complete - Google and Slack integration ready
Search Engine: βœ… Complete - Cross-platform unified search implemented
Content Processing: βœ… Complete - Jira, Google Docs, Slack content analysis for people insights

🎯 Ready for Production

The platform now provides comprehensive people-centric collaboration intelligence that transforms how teams discover expertise, optimize collaborations, and preserve institutional knowledge.

πŸš€ Business Value Delivered

  • Find Experts Fast: "Who knows React?" β†’ Sarah Smith (92% expertise, 15 people helped)
  • Optimize Teams: Data-driven collaboration recommendations based on past success patterns
  • Prevent Knowledge Loss: Track and preserve institutional knowledge through people relationships
  • Close Skill Gaps: Identify critical expertise shortfalls with actionable hiring/training recommendations

See CLAUDE.md for detailed implementation documentation and usage examples.

πŸ›‘οΈ License

MIT (future dual-license AGPL for community editions)

About

People intelligence platform analyzing cross-platform collaboration patterns via React/Rust stack with PostgreSQL, OpenSearch, Neo4j, OAuth integrations, and Kubernetes deployment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published