A comprehensive product management platform designed for modern product teams. Built with React, TypeScript, and Supabase, Vibefy provides everything you need to manage products from discovery to delivery.
- Kanban Boards: Visual task management with drag-and-drop functionality
- Sprint Planning: Agile sprint management with burndown charts
- Issue Tracking: Comprehensive issue lifecycle management
- Real-time Updates: Live collaboration with presence indicators
- Business Value Metrics: Track and measure product impact
- Roadmap Health: Monitor project progress and health indicators
- OKR Trends: Visualize objectives and key results over time
- Performance Dashboards: Comprehensive analytics and reporting
- Centralized Management: Collect and organize customer feedback
- Theme Analysis: Automatic categorization and insights
- Sentiment Tracking: Monitor customer satisfaction trends
- Feedback Integration: Connect feedback to product decisions
- Scientific Approach: Structured hypothesis testing framework
- Experiment Tracking: Monitor A/B tests and experiments
- Data-Driven Decisions: Evidence-based product development
- Learning Documentation: Capture insights and learnings
- Visual Roadmaps: Interactive timeline and quarter views
- Milestone Tracking: Monitor progress toward key objectives
- Resource Planning: Allocate resources and track dependencies
- Stakeholder Communication: Share progress with stakeholders
- Objectives & Key Results: Structured goal-setting framework
- Progress Tracking: Monitor OKR progress with visual indicators
- Alignment: Ensure team alignment with company objectives
- Performance Reviews: Regular check-ins and adjustments
- RICE Scoring: Reach, Impact, Confidence, Effort framework
- Value vs Effort Matrix: Visual prioritization tool
- Stakeholder Input: Collect and weigh stakeholder feedback
- Data-Driven Decisions: Use metrics to inform prioritization
- React 18: Modern React with concurrent features
- TypeScript: Type-safe development
- Vite: Fast build tool and dev server
- Tailwind CSS: Utility-first CSS framework
- shadcn/ui: High-quality component library
- Radix UI: Accessible component primitives
- Recharts: Data visualization and charts
- @dnd-kit/core: Drag and drop functionality
- Supabase: Backend-as-a-Service platform
- PostgreSQL: Robust relational database
- Row Level Security: Database-level security
- Real-time Subscriptions: Live data updates
- TanStack Query: Server state management
- React Context: Client state management
- Zustand: Lightweight state management (where needed)
- ESLint: Code linting and formatting
- Prettier: Code formatting
- Vitest: Unit testing framework
- Testing Library: Component testing utilities
- Node.js 18+: Required for running the application
- npm or yarn: Package manager
- Supabase account: For backend services
-
Clone the repository
git clone <repository-url> cd vibefy
-
Quick Setup (Recommended)
# Automated setup with pre-configured development credentials npm run setup:devThis command will:
- Install dependencies
- Create
.env.localwith development credentials - Set up the database with sample data
- Configure everything for local development
-
Manual Setup (Alternative)
Install dependencies:
npm install
Set up environment variables:
# For development (pre-configured credentials) cp .env.example .env.local # For production (use your own credentials) cp .env.example .env # Edit .env with your Supabase credentials
Set up the database:
npm run setup:db # Creates all tables npm run populate:data # Adds sample data
-
Create admin user (Optional)
npm run create:admin
-
Start the development server
npm run dev
The application will be available at
http://localhost:5173
# Development
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run setup:dev # Quick development setup (recommended)
# Testing
npm run test # Run all tests
npm run test:ui # Visual test interface
npm run test:run # Run tests once
npm run test:coverage # Run tests with coverage
# Database
npm run setup:db # Set up database schema
npm run populate:data # Add sample data
npm run create:admin # Create admin user
npm run verify:setup # Verify database setup
# Code Quality
npm run lint # Run ESLint
npm run lint:fix # Fix ESLint issues
npm run type-check # Run TypeScript checksThe application uses Supabase (PostgreSQL) with a well-structured schema:
user_profiles: User information, roles, and preferencesorganizations: Company/organization data and settingsprojects: Project management and metadataissues: Task/issue tracking with full lifecycle supportsprints: Sprint management and planningcomments: Issue comments and discussionsattachments: File attachments and medianotifications: User notifications and alerts
okrs: Objectives and Key Resultsfeedback: Customer feedback and insightshypotheses: Product hypotheses and experimentsroadmap_items: Roadmap planning and milestonesprioritization_scores: RICE and prioritization data
- Row Level Security (RLS): Database-level access control
- Role-based permissions: Granular permission system
- Audit trails: Track changes and user actions
- Data encryption: Sensitive data protection
src/
βββ components/ # Reusable UI components
β βββ ui/ # Base UI components (shadcn/ui)
β βββ shared/ # Shared components across features
β βββ auth/ # Authentication components
β βββ board/ # Kanban board components
β βββ projects/ # Project management components
β βββ sprints/ # Sprint management components
β βββ reports/ # Analytics and reporting components
β βββ roadmap/ # Roadmap planning components
β βββ okr/ # OKR management components
β βββ feedback/ # Customer feedback components
β βββ hypotheses/ # Hypothesis and experiment components
β βββ notifications/ # Notification components
β βββ prioritization/ # Prioritization tools
βββ hooks/ # Custom React hooks
βββ contexts/ # React Context providers
βββ pages/ # Page components and routing
βββ types/ # TypeScript type definitions
βββ integrations/ # External service integrations
βββ lib/ # Utility functions and helpers
βββ test/ # Test utilities and setup
- TypeScript: Strict type checking enabled
- ESLint: Code linting with custom rules
- Prettier: Consistent code formatting
- Husky: Git hooks for quality checks
- Conventional Commits: Standardized commit messages
- Unit Tests: Component and hook testing
- Integration Tests: Feature workflow testing
- E2E Tests: End-to-end user journey testing
- Coverage: Minimum 80% test coverage required
- Code Splitting: Lazy loading of components
- Memoization: React.memo and useMemo usage
- Virtual Scrolling: Large list performance
- Image Optimization: WebP format and lazy loading
We welcome contributions! Please follow these guidelines:
- Fork the repository and create a feature branch
- Follow coding standards (TypeScript, ESLint, Prettier)
- Write tests for new features and bug fixes
- Update documentation as needed
- Submit a pull request with a clear description
- Use Conventional Commits for commit messages
- Maintain 80%+ test coverage
- Follow TypeScript strict mode
- Use semantic versioning for releases
- Ensure all tests pass
- Update documentation if needed
- Request review from maintainers
- Address feedback promptly
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with React and TypeScript
- UI components from shadcn/ui
- Backend powered by Supabase
- Charts and visualizations with Recharts
Vibefy - Empowering product teams to build better products through data-driven decisions and collaborative workflows.