BA Assistant is a tool that helps business analysts build requirement documents using AI Language Models (LLM).
-
Prerequisites:
- Node.js (v16 or higher)
- npm (comes with Node.js)
- Ollama - Required for AI/LLM functionality
-
Clone the repository:
git clone https://github.com/yourusername/ba-assistant.git cd ba-assistant -
Install dependencies:
npm install
- Start the development server:
npm run dev
- Open your browser and navigate to
http://localhost:8080
- Build the application:
npm run build
- Start the server:
npm start
- Open your browser and navigate to
http://localhost:3000
-
Prerequisites:
- Docker and Docker Compose installed
- NVIDIA GPU and drivers (optional, for GPU acceleration)
-
Run the application:
docker compose up
This will:
- Start the BA Assistant application on port 8080
- Start Ollama service with GPU support (if available)
- Configure all necessary environment variables
- Mount Ollama data volume for model persistence
-
Access the application:
- Open your browser and navigate to
http://localhost:8080
- Open your browser and navigate to
-
Environment Configuration: The Docker setup includes the following default configurations:
- Ollama endpoint: http://ollama:11434/
- Model: llama3.2:3b
- Temperature: 0.3
- Max tokens: 4096
- Language: English
- Streaming: enabled
- Retry attempts: 3
- Retry delay: 1000ms
- Single project workspace with local storage support
- Project folder structure:
- project.md (Project Ideas)
- user-story-map.md
- customer-journey-map.md
- pages-and-navigations.md
- pages-and-user-stories.md
- sprint-planning.md
- Project Operations:
- Create/Open projects
- Auto-save functionality
- Export to folder
- Local storage integration
- Responsive grid-based prompt listing (3 columns on large screens, 2 on medium, 1 on small)
- Inline modal editor for prompt creation and editing
- Each prompt contains:
- Name field for identification
- Text area for prompt content
- Default prompt templates for:
- User Story Map
- Customer Journey Map
- Sprint Planning
- Custom prompt creation support
- Local storage persistence
- Dark mode compatible UI
- AI LLM integration for content generation
- Multi-file content generation support
- Document-prompt matching
- Clipboard integration
- Server-Sent Events (SSE) for streaming responses
- Integration with Ollama chat service
- Split-panel layout:
- Left: Project ideas
- Right: Document content
- Tab-based navigation
- Document selection system
- Copy-to-clipboard functionality
- Dark/Light theme toggle
- Collapsible sidebar
- Responsive design with Tailwind CSS
- Repository analysis capabilities:
- Git repository statistics (commits, tags)
- Feature extraction and analysis
- Real-time updates via server-sent events (SSE)
- Repository summary generation
- Commit history visualization
- Copy features and summaries to clipboard
- Repository management:
- Set and validate repository paths
- Repository path persistence
- Live feature extraction with loading states
- Error handling and validation
- Dual-panel display for features and summary
- Built with AppRun for state management and component architecture
- TypeScript for type safety and better developer experience
- Tailwind CSS for responsive styling
- Component-based structure in
/pagesdirectory:- Home (
/pages/home): Main workspace - Settings (
/pages/settings): Repository analysis - Prompts (
/pages/prompts): Prompt management
- Home (
- Server-Sent Events (SSE) endpoints for real-time updates
- Chat API integration with Ollama
- Git repository analysis services:
- Statistics collection
- Feature extraction
- Repository structure analysis