Files
star-kitten/.kilocode/rules/memory-bank/product.md
2025-10-06 23:31:31 -04:00

4.8 KiB

Product Overview - Star Kitten

What Star Kitten Is

Star Kitten is a comprehensive framework for building Discord bots and web applications focused on gaming communities, specifically MMO games like EVE Online and Star Citizen. It provides reusable packages and components that handle common gaming bot functionality including authentication, API integrations, data management, and user interfaces.

Problems It Solves

For Gaming Community Managers

  • Fragmented Tools: Gaming communities often use multiple disconnected tools for different functions (Discord bots, web dashboards, data analysis)
  • Complex Authentication: Managing OAuth flows for game APIs (EVE ESI, future Star Citizen APIs) is complex and error-prone
  • Data Integration: Combining game data with Discord interactions and web interfaces requires significant development effort
  • Repetitive Development: Building similar functionality across different gaming communities involves recreating the same patterns

For Developers

  • Discord Bot Boilerplate: Eliminates the need to write command handling, interaction management, and Discord client setup from scratch
  • Game API Complexity: Abstracts complex game API authentication, token management, and data fetching
  • Database Management: Provides pre-built schemas and models for common gaming bot use cases
  • Type Safety: Offers comprehensive TypeScript definitions for all game data types and API responses

How It Works

Architecture Philosophy

Star Kitten follows a modular, package-based architecture where each package serves a specific purpose:

  1. @star-kitten/discord - Core Discord bot functionality with command handling and interaction management
  2. @star-kitten/eve - EVE Online specific integrations including ESI API, authentication, and data models
  3. @star-kitten/util - Shared utilities including schedulers, text processing, and JSON querying
  4. eve-bot - Complete EVE Online Discord bot implementation
  5. eve-web - Web interface for EVE Online bot management and statistics

Key Workflows

Discord Bot Creation

  1. Import command handling from @star-kitten/discord
  2. Create command files with .command.ts extension
  3. Bot automatically discovers and registers commands
  4. Handle interactions through standardized command structure

EVE Online Integration

  1. User authenticates via EVE SSO through web interface
  2. Tokens stored securely with automatic refresh handling
  3. ESI API calls abstracted through helper functions
  4. Character data synchronized and cached in local database

Web Dashboard

  1. Users authenticate via EVE SSO
  2. Character data displayed through reactive components
  3. Real-time statistics from ESI API
  4. Admin functions for bot management

User Experience Goals

Discord Users

  • Intuitive Commands: Slash commands with clear descriptions and localization support
  • Rich Interactions: Modal forms, select menus, and interactive components for complex workflows
  • Immediate Feedback: Fast response times with proper loading states and error handling
  • Contextual Help: Commands provide guidance and examples for proper usage

Web Users

  • Seamless Authentication: Single sign-on through EVE Online credentials
  • Responsive Design: Works well on desktop and mobile devices
  • Real-time Data: Live updates of character stats, wallet balances, and skill queues
  • Progressive Enhancement: Basic functionality works without JavaScript

Bot Administrators

  • Easy Deployment: Simple configuration through environment variables
  • Monitoring: Built-in logging and error tracking
  • Scalability: Modular architecture supports adding new features without breaking existing functionality
  • Data Control: Local database with full control over user data and privacy

Success Metrics

Technical Success

  • Reliability: 99%+ uptime for bot and web services
  • Performance: < 2 second response times for Discord commands
  • Code Quality: 80%+ test coverage maintained across all packages
  • Developer Experience: New features can be added without modifying core packages

User Adoption

  • Community Growth: Framework adoption by multiple EVE Online corporations/alliances
  • Feature Usage: High engagement with key features like appraisals, fleet management, and character tracking
  • Feedback Integration: Regular updates based on user feedback and pain points

Long-term Vision

  • Multi-Game Support: Expand to Star Citizen and other MMO games
  • Ecosystem Growth: Third-party packages extending Star Kitten functionality
  • Open Source Community: Active contributor base improving and extending the framework