Skip to content

Epic 01: Client Dashboard Epic

Overview

The Client Dashboard Epic defines and implements functionality for providing a comprehensive overview of workforce management metrics and operational status to client users. The dashboard serves as the primary landing page after login, offering real-time insights into workforce composition, costs, forecasting accuracy, and actionable items requiring attention. This Epic supports data-driven decision making by visualizing key performance indicators, workforce distribution, and predictive analytics. It provides users with tools to monitor workforce status, identify issues requiring immediate action, and track trends over time.

Business Value

  • To provide real-time visibility into workforce metrics and operational status
  • To enable proactive workforce management through predictive analytics and forecasting
  • To highlight critical issues requiring immediate attention through a centralized task center
  • To improve operational efficiency by surfacing workforce shortages and planning gaps
  • To support cost optimization through transparent workforce cost distribution By delivering actionable insights and centralizing key information, this Epic contributes to improved workforce planning, reduced operational risks, and enhanced decision-making capabilities.

Solution Concept

To support effective workforce management, the system must provide an intuitive and informative dashboard interface. Users should be able to quickly assess workforce status, identify issues, track costs, and take action on pending items. The solution should present complex data in digestible visual formats, support different time horizons for analysis, and guide users to areas requiring attention. Integration with underlying workforce data should provide real-time updates while maintaining performance.

Features and User Stories

1.2 Total Open Vacancies and Active Jobs Widgets

User Story:

As a client user I want to see key workforce metrics at a glance So that I can quickly assess staffing levels and urgent workforce needs

Описание: The top widgets of the Dashboard displays the total vacancies and filled positions, divided by active job postings, with the buttons that lead to Active Jobs page and Active Workers Page. https://www.figma.com/design/UQ8dVKaOn34kWHjAL8x7t1/BlinkSoftware--HF---Main-?node-id=19906-88234&t=7gadS4esGysD0Owc-4 https://www.figma.com/design/UQ8dVKaOn34kWHjAL8x7t1/BlinkSoftware?node-id=1676-13738&t=KLnGeq3WTQv1JMob-4 Metrics Cards: Total Open Vacancies Large number display (e.g., "173") Last Updated timestamp on bottom right Active Jobs Breakdown by role type displayed as horizontal progress bars, top four roles (by urgency): Single job block: [Position_name] as primary item on the left “in %i days / weeks / months” as secondary line on the left “N workers needed” as primary item on the right (e.g., "38 workers needed") “N hired” as primary item on the right (e.g., "18 hired") “All Jobs” button -> Jobs Page “Active Workers” → Active Workers page Last Updated timestamp on bottom right

Критерии приёмки: - Show top 4 active jobs - Metrics update in real-time without page refresh - an independent widget - Progress bars visually represent the proportion of needed and hired workers for each role - Roles are ranked based on urgency (the less time left before the job start date, the higher the role is in the list) - “In %i days / weeks / months” calculated as a number of days (if ≤ 14 days left to job start date), or weeks (if ≤ 2-12 weeks left), or months (if ≥3 months left), rounded up by 1 day - Numbers format with appropriate separators for readability

1.2.1 (не MVP)

1.3 Workforce Cost Distribution (не MVP)

User Story:

As a client manager I want to visualize how workforce costs are distributed across different worker types So that I can optimize spending and identify cost-saving opportunities

Описание: The Workforce Cost Distribution widget presents a pie chart visualization of costs broken down by worker categories. Widget Components: Header Workforce Cost Distribution - bold Dropdown with options “Today”, “This Week”, “This Month”, “This Year” Pie Chart Interactive segments for each worker type (position) Clear visual distinction between categories using consistent color scheme Hover effects showing exact values Legend Worker position labels with color indicators, for instance: Warehouse Assistant Forklift Driver Team Lead Percentage of total cost for each category Total cost sum displayed

Критерии приёмки: - Pie chart renders smoothly with animation on load - Hovering over segments displays: - Category name - Exact cost amount - Percentage of total - Legend items are clickable to highlight corresponding segment - Chart updates dynamically when time period filter changes - Handling edge cases (e.g., zero costs, single category, no data screen) - Mobile-responsive with touch interactions - not MVP

1.4 Task Center Widget (part of epic 10) (не MVP)

User Story:

As a client user I want to see all pending tasks and required actions in one place So that I can prioritize my work and ensure nothing is overlooked

Описание: The Task Center consolidates various actionable items requiring user attention, providing quick access to different workflows. Task Types and Structure: Each task item displays: Alert icon (triangle warning symbol) Task description Contextual information Action button linking to appropriate page Task Categories: Unprocessed Applications Count indicator (e.g., "47 unprocessed applications") Link to "Review" page Schedule Actions Description: "8 Calls This Week" Link to "Schedule" page Workforce Forecasts Specific needs (e.g., "Forecast: You Need 12 More Vacancies for Warehouse Assistant") Link to "Create" - job posting Additional Forecasts Image with text as on the design: "Forecast: You Need 4 More Vacancies for Forklift Driver") Leave Requests Count of pending approvals (e.g., "88 Leave Requests to Be Approved") Link to "Review" page Forecasts lines in Task Center are images with text “In development” over hover

Критерии приёмки: - Tasks sorted by priority/urgency - Real-time updates when new tasks appear - Completed tasks disappear from list automatically - Each action button navigates to the correct page/workflow - Task counts update dynamically - not MVP - Visual indicators for urgent items (color coding, icons) - Maximum of 5 tasks shown with "View all" option if more exist

1.5 Ask Cruits AI Button = last Feature Epic of

User Story:

As a client user I want to access an AI assistant through a button in the header So that I can quickly get help finding candidates and answers to business questions without leaving my current workflow

Описание: The Ask Cruits AI button provides instant access to an AI-powered chatbot that assists users with candidate discovery, business questions, and platform guidance. Button Location: Positioned in the header navigation bar Visible from all client pages Consistent placement across the client UI Chatbot Functionality: Candidate Search Assistance: Natural language queries for finding candidates Filters and recommendations based on requirements Integration with candidate database Business Q&A: Labor legislation information Domain knowledge (warehouse operations, logistics, etc.) General HR and workforce management guidance Technical Implementation: Simple, cost-effective LLM integration (e.g., Google Gemini Flash, GPT-4o-mini) for MVP Real-time response generation UI Components: Button with AI icon and label Click opens chat interface (modal or sidebar?) Persistent chat history during session Clear visual distinction for AI responses Input field with send button Suggested prompts for common queries - nice to have

Критерии приёмки: - Button accessible from all client pages - Chat interface opens within 1 second of click - Responses generated within 3 seconds - nice to have - Chat maintains context during conversation - Handles candidate search queries effectively - Provides accurate business domain answers - Clear error messaging for unsupported queries - Mobile-responsive chat interface - nice to have

1.5.1 (не MVP)

1.6 Active Workers Page

User Story:

As a client user I want to see detailed breakdown of workers by role So that I can understand workforce composition and identify urgent staffing imbalances

Описание: Clicking "Active Workers" from the Active Jobs widget navigates to a dedicated Active Workers page displaying a table of all workers with detailed information and management options. While clicking “All Jobs” navigates to Jobs page. Active Workers Page Components: https://www.figma.com/design/UQ8dVKaOn34kWHjAL8x7t1/BlinkSoftware?node-id=446-11680&t=KLnGeq3WTQv1JMob-4 Header: "Back to Dashboard" navigation link Page title: "Active Workers" Tab Navigation: Tabs Filtering by Position General The form must include a tab control for filtering content by the Position field Tabs are generated dynamically based on unique values from the data Tab Composition For each unique Position , a separate tab must be created The tab name must match the position name The number of records for that position must be shown in parentheses A default All Workers tab must always be present, displaying all records without filtering Example: All Workers (120) Manager (15) Developer (70) Designer (35) Behaviour with Many Tabs If all tabs do not fit within the form width, only the first tabs are shown in line At the end, a More tab must appear Clicking More opens a dropdown list with the remaining positions Filtering Logic Selecting a tab filters the displayed content by the corresponding position The All Workers tab shows all data without filtering Filters: Search box for worker name/ID Location dropdown filter Active/Inactive status filter dropdown Data Table Columns: Worker (shows avatar icon and name) ID Number (e.g., WRK-10023) Job ID (e.g., ASSIST-04 / Forklift_035_1) Location (e.g., Rotterdam, Netherlands) Status (Active/Inactive) Actions menu (three dots) Actions Menu Options: If “Active workers” filter applied: View profile Message worker If “Inactive workers” filter applied: View profile Pa

Критерии приёмки: - Clicking on table row navigates: - in “Active workers” → Full Candidate Profile page (with job context) - in “Inactive workers” → Simplified Candidate Profile page (no job context) - Tab counts reflect actual filtered worker numbers - Clicking a tab filters the table to show only that role - Search filters results in real-time - Location dropdown shows available locations - Status filter toggles between Active/Inactive workers - Table supports row selection - Actions menu appears on a click on the menu button - “View profile” menu item leads to Candidate’s Profile page - “Message worker” menu item opens the message dialog with that worker - No “Remove worker” option - Pagination controls update table view without page reload - "Back to Dashboard" returns user to main dashboard

1.7 Data Refresh & Loading

User Story:

As a user I want to see current data and know when it's being updated So that I can trust the information and make informed decisions.

Описание: System for managing data freshness and loading states across the dashboard. Components: Last update timestamp Auto-refresh capability (configurable) Loading states for each widget Error handling and retry mechanisms

Критерии приёмки: - Individual widget loading doesn't block entire dashboard - Clear loading animations/skeletons - Error messages with retry options - Timestamp shows "Last updated: - X minutes ago"

1.8 Alert System Integration - (не MVP)

User Story:

As a user I want to receive visual alerts for critical workforce situations So that I can take immediate action to prevent operational issues

Описание: Visual warning system integrated into relevant dashboard widgets. Alert Types: Workforce shortage warnings (shown in forecast chart) Cost overrun indicators Compliance alerts Document expiry warnings Alert Components: Warning icon Clear description of issue Severity level (critical, warning, info) Direct link to resolution action

Критерии приёмки: - Alerts appear prominently without disrupting layout - Multiple alerts stack appropriately - Configurable alert thresholds - Sound/notification options for critical alerts

1.9 Export & Reporting - (не MVP)

User Story:

As a client user I want to export dashboard data and generate reports So that I can share insights with stakeholders and maintain records

Описание: Functionality to export dashboard data in various formats and generate standardized reports. Export Options: PDF snapshot of entire dashboard Excel export of underlying data CSV export for individual widgets Scheduled report generation Email distribution of reports

Критерии приёмки: - Exports maintain visual formatting where applicable - Data exports include all relevant metadata - Scheduled reports configurable by user - Export includes timestamp and filters applied - Appropriate data access controls enforced

1.10 Workforce Forecast Chart - (не MVP)

User Story:

As a workforce planner I want to compare predicted workforce needs against actual staffing levels over time So that I can identify gaps and adjust my planning strategies

Описание: The Workforce Forecast Chart provides a time-series visualization, comparing multiple data series related to workforce planning and actuals. Chart Components: Workforce Type Selector Dropdown with options: All Positions, and every worker type separately (Warehouse, Lead, Forklift) Currently selected option shown in a dropdown Time Period Selector Dropdown or toggle for: Monthly, Quarterly, Yearly views Currently selected period highlighted Line Chart X-axis: Time periods (N months shown in mockup: Jan through Jul) Y-axis: Worker count (scale from 0 to maximum number, rounded up to the nearest hundred) Multiple data series with different line styles. Actual - solid line, Predicted - dashed line, e.g.: Warehouse Actual (solid line) Warehouse Predicted (dashed line) Lead Predicted (dashed line) Lead Actual (solid line) Forklift Predicted (dashed line) Forklift Actual (solid line) Legend Color-coded indicators for each data series Predicted vs Actual differentiation Summary statistics in bold on bottom left, e.g.: Predicted Total: 150 Actual Total: 145 Alert Indicators Warning banner for significant gaps (e.g., "Workforce Shortage Warning") Specific shortage details with percentages

Критерии приёмки: - Chart renders with smooth animations - Interactive tooltips show exact values on hover - Legend items clickable to show/hide series - Time period changes update chart without page reload - Handles missing data points gracefully - Responsive design maintains readability on smaller screens - Export functionality for chart data - Visual alerts for significant variances (>15% gap) - Technical Considerations - Performance Requirements - Dashboard initial load time < 3 seconds - Widget refresh time < 3 second - Support for 100+ concurrent users - Data caching strategy for optimal performance - Real-time integration with Mysolution - data stored there - We start from an empty database, Mysolution does not share any their data with us - Collect all possible data for future predictive analytics - Task management system integration - Security & Access Control - Role-based access to different widgets and data - not MVP - Data encryption in transit and at rest - Audit logging for all data access - Configurable data visibility by location/department - Browser Compatibility - Edge (latest 2 versions) - Safari (latest 2 versions) - Chrome (latest 2 versions) - Mobile browsers (iOS Safari, Chrome Mobile) - Related content - More info - g(p.length) css-6cu6fo" role=listitem> - 2026-02-17 Weekly Sync with Stakeholders - 2026-02-17 Weekly Sync with Stakeholders - Mykhailo Virych - g(p.length) css-6cu6fo" role=listitem> - 2026-10-03 Weekly Sync with Stakeholders - 2026-10-03 Weekly Sync with Stakeholders - Mykhailo Virych - g(p.length) css-6cu6fo" role=listitem> - 2026-02-03 Weekly Sync with Stakeholders - 2026-02-03 Weekly Sync with Stakeholders - Mykhailo Virych - g(p.length) css-6cu6fo" role=listitem> - 2026-01-13 Weekly Sync with Stakeholders - 2026-01-13 Weekly Sync with Stakeholders - Mykhailo Virych - g(p.length) css-6cu6fo" role=listitem> - 2025-12-02 Weekly Sync with Stakeholders - 2025-12-02 Weekly Sync with Stakeholders - Mykhailo Virych - g(p.length) css-6cu6fo" role=listitem> - 2025-09-25 Weekly Sync with Stakeholders - 2025-09-25 Weekly Sync with Stakeholders - Mykhailo Virych