firecrawl / firecrawl/open-lovable
Issues 1
- Dominant language
- TypeScript
- Stars
- 28.4k
- Forks
- 5.4k
- PR merge metrics
- No merged PRs in 30d
Description
I have an existing HR/L&D Induction Tracking website.
I DO NOT want a new website or a new design.
I want you to inspect my existing project and FIX ALL DATA, EXCEL IMPORT, DATABASE, NAVIGATION AND DASHBOARD SYNCHRONIZATION ERRORS.
IMPORTANT:
Keep my existing UI, layout, colours, menu structure and design wherever possible.
The main problem is that when I upload my Excel file, the data is not correctly displayed, some data disappears when I move to Dashboard or other sections, and the data shown in Dashboard, Employee Tracking, Batch Management and Reports does not match the Excel data.
FIX THE ROOT CAUSE, NOT JUST THE INDIVIDUAL SCREEN.
==================================================
1. ONE MASTER DATA SOURCE
==================================================
Create ONE centralized Master Employee Data source.
All modules must use the same data:
Excel Import
↓
Master Employee Data
↓
Dashboard
↓
Employee Tracking
↓
Batch Management
↓
Reports
Do NOT create separate datasets for each page.
If an employee is imported once, the same employee record must be available everywhere.
If an employee is updated, every page must automatically reflect the updated information.
==================================================
2. EXCEL IMPORT
===============
Support:
.xlsx
.xls
.csv
When I upload Excel:
* Read the first row as headers.
* Import ALL employee rows.
* Do not randomly skip rows.
* Do not lose columns.
* Preserve the original Excel values.
* Show an import preview before saving.
* Show total rows detected.
* Show successfully imported rows.
* Show updated records.
* Show new records.
* Show duplicate Employee IDs.
* Show invalid/missing Employee IDs.
* Show clear error messages.
Employee ID must be the UNIQUE KEY.
If Employee ID already exists:
UPDATE the existing employee.
If Employee ID does not exist:
CREATE a new employee.
Uploading the same Excel file twice must NOT create duplicate employees.
==================================================
3. MY EXCEL DATA FIELDS
=======================
The system must support these fields:
Employee ID
Employee Name
Date
Org Unit Code
Org Unit Name
Dept.Code
Dept.Name
Factory / Office Name
Attendance Status
Training Completion Status
Also allow additional Excel columns without breaking the system.
Support common variations:
EMP ID → Employee ID
Employee ID → Employee ID
EMP Name → Employee Name
Employee Name → Employee Name
Dept → Department
Dept.Name → Dept.Name
Factory → Factory / Office Name
Office → Factory / Office Name
Attendance → Attendance Status
Training Status → Training Completion Status
Create a proper column-mapping system during Excel import.
==================================================
4. DATA MUST NOT DISAPPEAR
==========================
This is the most important requirement.
Imported Excel data must remain available when I:
* Open Dashboard
* Open Employee Tracking
* Open Batch Management
* Open Reports
* Change filters
* Search employees
* Edit employees
* Navigate between pages
* Refresh the browser
Do NOT store important application data only in temporary JavaScript variables.
Use persistent database storage.
If using Supabase or another supported database, create the database structure and connect every module to the same database.
==================================================
5. DASHBOARD
============
Dashboard must calculate directly from Master Employee Data.
Show:
Total Employees
Total Batches
Attendance Present
Attendance Absent
Training Completed
Training Pending
Training In Progress
Completion %
Also show:
Department-wise summary
Factory/Office-wise summary
Batch-wise summary
Every number must be calculated from the actual imported employee records.
No hardcoded dashboard numbers.
When Excel data changes, Dashboard must update automatically.
==================================================
6. EMPLOYEE TRACKING
====================
Employee Tracking must show the SAME records imported from Excel.
Display:
Employee ID
Employee Name
Date
Org Unit Code
Org Unit Name
Dept.Code
Dept.Name
Factory / Office Name
Attendance Status
Training Completion Status
If Batch information exists, also display:
Batch
Add:
Search
Employee ID filter
Employee Name filter
Department filter
Factory/Office filter
Attendance filter
Training Status filter
Batch filter
Sorting
Pagination
Edit
Delete with confirmation
When I edit an employee:
Master Data
↓
Dashboard updated
↓
Batch Management updated
↓
Reports updated
==================================================
7. BATCH MANAGEMENT
===================
Batch Management must use the SAME Master Employee Data.
For every batch show:
Batch Name/Number
Total Employees
Completed
Pending
In Progress
Completion %
Attendance Summary
When I select a batch, display the correct employees belonging to that batch.
Do not create a separate disconnected batch dataset.
If batch information comes from Excel, import and link it automatically.
==================================================
8. REPORTS
==========
Reports must use the SAME Master Employee Data.
Create:
Employee Report
Batch Report
Department Report
Factory/Office Report
Attendance Report
Training Completion Report
Pending Training Report
Reports must match Employee Tracking exactly.
Add filters before generating reports.
Allow export to:
Excel
CSV
PDF
==================================================
9. UPDATE EXCEL DATA
====================
I frequently receive updated Excel files.
Create two import modes:
MODE 1:
ADD / UPDATE RECORDS
MODE 2:
REPLACE ALL DATA
Default mode must be ADD / UPDATE RECORDS.
Example:
Existing database:
100 employees
New Excel:
100 existing employees
+
20 new employees
Expected:
100 Updated
20 New
0 Duplicate
Do NOT delete existing employees automatically.
==================================================
10. EDIT AND DELETE
===================
If I edit an employee in Employee Tracking, update the central Master Employee Data.
The updated information must immediately appear in:
Dashboard
Employee Tracking
Batch Management
Reports
If I delete an employee, ask for confirmation.
After deletion, all related dashboard counts and reports must recalculate automatically.
==================================================
11. FILTERS MUST WORK TOGETHER
==============================
Filters must work correctly without losing data.
Example:
Factory = Factory A
Department = HR
Training Status = Pending
The system must show only employees matching ALL selected filters.
Clearing a filter must restore the correct records.
==================================================
12. DATA VALIDATION
===================
Before saving imported Excel data:
Check:
Missing Employee ID
Duplicate Employee ID
Empty employee name
Invalid dates
Invalid attendance status
Invalid training status
Show validation errors clearly.
Do not silently discard invalid rows.
Allow the user to correct or skip invalid records intentionally.
==================================================
13. IMPORT HISTORY
==================
Create an Import History section showing:
Import Date
File Name
Total Rows
New Records
Updated Records
Duplicates
Errors
User/Administrator
This will help me track what happened when I upload Excel files.
==================================================
14. TEST THE COMPLETE SYSTEM
============================
After implementing the changes, perform these tests.
TEST 1:
Import 10 employees.
Expected:
10 employees appear in Employee Tracking.
TEST 2:
Open Dashboard.
Expected:
Total Employees = 10.
TEST 3:
Open Batch Management.
Expected:
The same 10 employees appear under the correct batches.
TEST 4:
Open Reports.
Expected:
The same 10 employees appear.
TEST 5:
Search one Employee ID.
Expected:
Correct employee appears.
TEST 6:
Edit one employee.
Expected:
The change appears in Dashboard, Batch Management and Reports.
TEST 7:
Upload the same Excel again.
Expected:
No duplicate employees.
TEST 8:
Upload 2 existing employees + 3 new employees.
Expected:
2 Updated
3 New
0 accidental duplicates.
TEST 9:
Refresh the browser.
Expected:
All imported data remains available.
TEST 10:
Navigate through every module.
Expected:
No imported data disappears.
==================================================
15. IMPORTANT DATA ARCHITECTURE
===============================
Use this architecture:
```
EXCEL
↓
EXCEL IMPORT
↓
DATA VALIDATION
↓
MASTER EMPLOYEE DATA
↓
┌──────────┼───────────┐
↓ ↓ ↓
```
DASHBOARD EMPLOYEE BATCH
TRACKING MANAGEMENT
↓ ↓ ↓
REPORTS
Every module must read from the same Master Employee Data.
Never create separate hardcoded data for:
Dashboard
Employee Tracking
Batch Management
Reports
==================================================
16. FINAL REQUIREMENT
=====================
First inspect my existing project.
Identify:
* Why Excel data is not displaying correctly.
* Why imported data disappears.
* Why navigation causes data loss.
* Why Dashboard numbers do not match.
* Why Employee Tracking does not match Excel.
* Why Batch Management does not match Excel.
* Why Reports do not match Excel.
* Why data is not persistent.
Then fix the underlying architecture.
DO NOT simply patch the visible errors.
DO NOT remove my existing features.
DO NOT unnecessarily redesign the website.
Keep the existing professional LMS/HR tracking appearance.
After fixing everything, test the complete flow:
Excel Upload
→ Import
→ Validation
→ Master Data
→ Dashboard
→ Employee Tracking
→ Batch Management
→ Reports
→ Edit
→ Update
→ Search
→ Filter
→ Export
→ Refresh
Everything must remain synchronized.
FINAL SUCCESS CONDITION:
If I upload an Excel file, I should be able to see the SAME employee data correctly in every section of the website without the data disappearing or becoming disconnected.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by inspecting the existing Excel import, persistence layer, and data-loading paths for Dashboard, Employee Tracking, Batch Management, and Reports; trace one upload through navigation and refresh to find where records diverge or disappear. Done means one persistent master dataset drives every module, with the requested validation, add/update and replace behavior, synchronized edits and deletes, and the listed end-to-end tests passing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react, typescript
- Domain
- data, databases, full-stack
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100