Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PrisM - AI-Powered Product Strategy Platform

PrisM turns a one-line product idea into a validated strategy: 14 specialized AI agents run across an interactive graph, branch into parallel variations, converge into recommendations, and push approved work straight into JIRA as real tickets.

FastAPI · React 19 · TypeScript · ReactFlow · NVIDIA NIM (Llama 3.1 Nemotron 253B) · Auth0 · JIRA REST v3

Demo

Building a feature, running agents across the strategy graph, and auto-creating JIRA tickets on approval.

PrisM_demo.mp4

▶️ Video not playing? Watch it on YouTube instead.

Quickstart

Requires an NVIDIA API key and an Auth0 SPA app - see Environment Setup for exactly which keys and where they go.

# backend
cd backend && python3 -m venv .venv && source .venv/bin/activate
python3 -m pip install -r requirements.txt
python3 -m uvicorn app.main:app --reload   # http://localhost:8000

# frontend (new terminal)
cd frontend && npm install && npm run dev   # http://localhost:5173

Features

  • Multi-Agent Workflow System: 14 specialized AI agents across 5 workflow categories
  • Interactive Strategy Graph: Visual workflow representation with real-time agent execution
  • JIRA Integration: Automatic project and ticket creation when nodes are approved
  • Feature Management: Create, track, and iterate on product features
  • Branch Exploration: Run parallel variations of agent outputs for deeper insights
  • Convergence Analysis: Synthesize multiple perspectives into actionable recommendations

Architecture

Agent Workflows

  1. Project & Ideation

    • Idea Brainstormer
    • Market Sizing Estimator
    • Scenario Planner
    • Needs & Goals Mapper
    • Convergence Synthesizer
  2. Requirements & Development

    • Story Refinement Agent
    • Backlog Prioritization Agent
  3. Customer & Market Research

    • Competitor Analysis Agent
    • Industry Trends Synthesis Agent
  4. Prototyping & Testing

    • Test Case Generator Agent
    • Design Iteration Agent
  5. Go-to-Market Execution

    • GTM Strategy Agent
    • Release Notes Agent
    • Stakeholder Communication Agent

Tech Stack

Backend

  • FastAPI: Modern Python web framework for building APIs
  • OpenAI: LLM integration via NVIDIA API endpoints
  • JIRA REST API v3: Project and issue management integration
  • Pydantic: Data validation and settings management
  • Python 3.x: Core programming language

Frontend

  • React 19: UI framework
  • TypeScript: Type-safe JavaScript
  • Vite: Fast build tool and dev server
  • ReactFlow: Interactive node-based graph visualization
  • Tailwind CSS: Utility-first CSS framework
  • shadcn/ui: Beautifully designed component library
  • Auth0: Authentication and authorization

Infrastructure

  • File-based Storage: JSON-based feature persistence
  • Environment Variables: Secure credential management

Getting Started

Prerequisites

  • Python 3.8+
  • Node.js 18+
  • npm (or pnpm)
  • NVIDIA API key - required, agents will not run without it
  • Auth0 tenant - required, the dashboard and graph pages are auth-gated
  • JIRA account (optional, for ticket automation)

Environment Setup

PrisM needs two .env files in different directories - the backend reads the project root, and Vite only reads frontend/. Copy the templates:

cp .env.example .env
cp frontend/.env.example frontend/.env

You need to bring your own keys. Nothing here ships with credentials.

/.env - backend

Variable Required What it's for
NVIDIA_API_KEY Yes All LLM calls. Agent runs return HTTP 503 without it. Get one at build.nvidia.com → pick any model → Get API Key
NVIDIA_API_BASE_URL No Defaults to https://integrate.api.nvidia.com/v1
JIRA_BASE_URL No e.g. https://your-instance.atlassian.net
JIRA_EMAIL No Atlassian account email
JIRA_API_TOKEN No Create a token

Without the JIRA trio, features and agents work normally - only automatic project/ticket creation is skipped.

/frontend/.env - frontend

Variable Required What it's for
VITE_AUTH0_DOMAIN Yes Auth0 tenant, e.g. your-tenant.us.auth0.com
VITE_AUTH0_CLIENT_ID Yes Auth0 SPA client ID
VITE_API_BASE_URL No Defaults to http://localhost:8000

⚠️ /feature-dashboard and /graph are behind <ProtectedRoute>. If the two Auth0 variables are missing, Auth0 never initializes and both pages render blank with no visible error (check the browser console for the warning). The landing page still loads.

To set up Auth0: create a free Single Page Application at manage.auth0.com, then set both Allowed Callback URLs and Allowed Web Origins to http://localhost:5173.

Backend Setup

cd backend
python3 -m venv .venv && source .venv/bin/activate
python3 -m pip install -r requirements.txt
python3 -m uvicorn app.main:app --reload

The API will be available at http://localhost:8000 - check GET /health.

Frontend Setup

cd frontend
npm install      # or: pnpm install
npm run dev      # or: pnpm run dev

The frontend will be available at http://localhost:5173

Usage

Creating a Feature

  1. Navigate to the Feature Dashboard
  2. Click "Create a new feature"
  3. Enter a feature name and problem statement
  4. A JIRA project is automatically created (if configured)
  5. Navigate to the strategy graph to begin exploration

Running Agents

  1. Select an agent node in the graph
  2. Provide input based on the agent's requirements
  3. Click "Run" to execute the agent
  4. Review the structured output
  5. Optionally run branch explorations for variations

Approving & JIRA Integration

  1. Review agent outputs in the graph
  2. Mark nodes as "approved" when satisfied
  3. JIRA tickets are automatically created for approved nodes:
    • Story Refinement → User Stories
    • GTM Strategy → GTM tasks
    • Backlog Prioritization → Prioritized tasks

Pipeline Execution

Run complete workflows end-to-end:

  • Project & Ideation: Generate and validate ideas
  • Requirements & Development: Refine stories and prioritize backlog
  • Customer & Market Research: Analyze competition and trends
  • Prototyping & Testing: Generate tests and iterate designs
  • Go-to-Market Execution: Plan launch and communicate
  • Full Strategy Pipeline: Run all agents sequentially

API Endpoints

Features

  • GET /v1/features - List all features
  • POST /v1/features - Create a new feature (with JIRA project)
  • GET /v1/features/{id} - Get feature details
  • PATCH /v1/features/{id} - Update feature (triggers JIRA ticket creation on approval)

Agents

  • GET /v1/agents/graph - Get agent graph structure
  • POST /v1/agents/query - Query a single agent
  • POST /v1/agents/branch-converge - Converge branch explorations
  • POST /v1/agents/converge - Synthesize all agent outputs

Pipelines

  • GET /v1/pipelines - List available pipelines
  • POST /v1/pipelines/run - Execute a pipeline workflow

Key Innovations

  1. On-Demand JIRA Projects: Automatically creates JIRA projects per feature for organized tracking
  2. Intelligent Context Propagation: Each agent receives feature context for better responses
  3. Branch & Converge Pattern: Explore multiple variations and synthesize insights
  4. Real-Time Notifications: Toast notifications for JIRA project/ticket creation
  5. Visual Workflow Editor: Interactive graph showing agent relationships and execution flow

Project Structure

Prism/
├── backend/
│   ├── app/
│   │   ├── main.py              # FastAPI application & agent logic
│   │   └── data/
│   │       └── features.json    # Feature storage
│   └── requirements.txt         # Python dependencies
├── frontend/
│   ├── src/
│   │   ├── components/          # Reusable UI components
│   │   ├── pages/               # Page components
│   │   ├── lib/                 # Utility helpers
│   │   └── types/               # TypeScript type definitions
│   ├── .env                     # Auth0 + API base URL (gitignored)
│   ├── .env.example
│   ├── package.json
│   └── vite.config.ts
├── .env                         # NVIDIA + JIRA credentials (gitignored)
├── .env.example
└── README.md

Contributing

This project was built for HackUTD 2025. Contributions, issues, and feature requests are welcome!

License

MIT License - see LICENSE file for details

Acknowledgments

  • Built with NVIDIA AI APIs
  • Powered by OpenAI's language models
  • Integrated with Atlassian JIRA
  • UI components from shadcn/ui
  • Graph visualization by ReactFlow

HackUTD 2025 | Built with ❤️ by Team PrisM

About

PrisM is a dynamic generative product lifecycle canvas, where each node captures a product's state, data, insights, and requirements, while the connections visualize the flow of logic and decision-making.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages