A modern, responsive web application for managing employee performance check-ins with AI-powered feedback assistance. Built with React, this multi-role dashboard supports HR personnel, managers, and employees with tailored interfaces and real-time AI integration.
The AI Performance Check-in Assistant is a comprehensive performance management tool that streamlines the feedback process between employees, managers, and HR teams. The application features:
- Multi-role dashboards with role-based access control
- Real AI integration for feedback improvement and reframing
- Responsive design that works seamlessly across devices
- Interactive feedback system with collapsible history and current status tracking
- Smart analytics for HR teams to monitor team performance trends
π₯ HR Dashboard
- View organization-wide performance analytics
- Search and filter employees by teams
- Monitor feedback completion rates and team performance metrics
- Access comprehensive feedback history with AI summaries
π’ Manager Dashboard
- Provide feedback to team members
- Track team goal progress and completion rates
- Use AI assistance for constructive feedback writing
- View team performance analytics and trends
π€ Employee Dashboard
- Submit monthly performance check-ins
- Update goal statuses and progress
- Answer health check questionnaires
- Use AI tools to improve feedback quality before submission
Before running this project, make sure you have:
- Node.js (version 14.0.0 or higher)
- npm (comes with Node.js) or yarn
- A modern web browser
-
Install Node.js
- Download Node.js from nodejs.org
- Run the installer and follow the setup wizard
- Verify installation by opening Command Prompt and running:
node --version npm --version
-
Clone/Download the Project
cd "performance tracker"
-
Install Dependencies
npm install
-
Start the Development Server
npm start -
Open the Application
- Your browser should automatically open
http://localhost:3000 - If not, manually navigate to this address
- Your browser should automatically open
-
Install Node.js
Option A: Using Node Version Manager (Recommended)
# Install nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash # Restart terminal or run: source ~/.bashrc # Install and use latest Node.js nvm install node nvm use node
Option B: Using Package Manager
# Ubuntu/Debian sudo apt update sudo apt install nodejs npm # macOS with Homebrew brew install node # CentOS/RHEL/Fedora sudo dnf install nodejs npm
-
Navigate to Project Directory
cd "performance tracker"
-
Install Dependencies
npm install
-
Start the Development Server
npm start
-
Open the Application
- Your browser should automatically open
http://localhost:3000 - If not, manually navigate to this address
- Your browser should automatically open
Test the application using these demo credentials:
| Role | Password | |
|---|---|---|
| HR | hr@company.com | password |
| Manager | manager@company.com | password |
| Employee | employee@company.com | password |
In the project directory, you can run:
npm start- Runs the app in development mode (http://localhost:3000)npm test- Launches the test runner in interactive watch modenpm run build- Builds the app for production to thebuildfoldernpm run eject- Ejects from Create React App (one-way operation, not recommended)
- Live API Integration: Connected to real AI service for feedback reframing
- Smart Suggestions: AI analyzes and improves feedback quality
- Loading States: Visual feedback during AI processing
- Error Handling: Graceful handling of network issues
- Login with any role (HR/Manager/Employee)
- Navigate to a feedback form
- Enter text in any feedback textarea
- Click "Reframe with AI" button
- View AI suggestions in the modal
- Choose to accept or keep original text
src/
βββ components/ # Reusable UI components
β βββ Layout.js # Main layout with navigation
β βββ Modal.js # Modal dialogs
β βββ AISummaryPanel.js # AI feedback summaries
β βββ CollapsibleFeedbackHistory.js # Feedback timeline
β βββ Tooltip.js # Information tooltips
βββ context/ # React Context providers
β βββ AuthContext.js # User authentication
β βββ FeedbackContext.js # Feedback state management
βββ data/ # Mock data
β βββ mockData.js # Sample employees, teams, feedback
βββ pages/ # Main dashboard pages
β βββ LoginPage.js # Authentication
β βββ HRDashboard.js # HR analytics dashboard
β βββ ManagerLanding.js # Manager role selection
β βββ ManagerDashboard.js # Manager feedback interface
β βββ EmployeeDashboard.js # Employee check-in form
βββ utils/ # Utility functions
β βββ aiApi.js # AI service integration
βββ App.js # Main app component with routing
βββ index.js # React app entry point
βββ index.css # Global styles and variables
- Modern UI: Clean, professional interface with consistent styling
- Responsive Layout: Optimized for desktop, tablet, and mobile devices
- Accessibility: WCAG-compliant color contrasts and keyboard navigation
- Consistent Typography: Standardized font hierarchy throughout
- Smart Tooltips: Auto-positioning information tooltips
- Collapsible Sections: Organized feedback history by month
- Real-time Updates: Immediate feedback display across dashboards
- Progress Tracking: Visual indicators for goals and completion rates
- Context API: Centralized state management for authentication and feedback
- Local Storage: Persistent current feedback across browser sessions
- Mock Data: Comprehensive sample data for realistic testing
- Search & Filter: Real-time employee and team filtering
Edit src/data/mockData.js to modify:
- Employee information
- Team structures
- Goal definitions
- Historical feedback data
- Global styles:
src/index.css - Component styles: Individual CSS files
- CSS variables: Consistent theming in
index.css
The AI service endpoint is configured in src/utils/aiApi.js. Update the URL to integrate with different AI services.
- Chrome 90+
- Firefox 88+
- Safari 14+
- Edge 90+
The application is fully responsive and provides an optimized experience on:
- iOS devices (iPhone/iPad)
- Android phones and tablets
- Touch-friendly interface with appropriate sizing
Port 3000 already in use
# Kill process using port 3000
npx kill-port 3000
# Or start on different port
PORT=3001 npm startInstallation fails on Windows
- Ensure you have administrator privileges
- Try clearing npm cache:
npm cache clean --force - Delete
node_modulesand runnpm installagain
Installation fails on Linux/macOS
- Check Node.js version:
node --version(should be 14+) - Try with sudo if permission issues:
sudo npm install - On macOS, you might need Xcode command line tools:
xcode-select --install
AI features not working
- Check network connection
- Verify the AI service endpoint is accessible
- Check browser console for error messages
This project is for demonstration purposes. Feel free to use and modify as needed for your own projects.
For questions or issues:
- Check the troubleshooting section above
- Review the browser console for error messages
- Ensure all dependencies are properly installed
- Verify Node.js version compatibility