Technical Debt Tracker
Log, categorize, and estimate the cost of technical debt.
Technical Debt Audit Report
Generated on:
$0
Total Est. Cost
0
Total Items
0
Critical Issues
Debt Inventory
Log New Technical Debt
Manage Debt Items
Review and delete items from your tracker.
| Title | Category | Priority | Cost | Action |
|---|
No technical debt items found. Good job!
'; } debtItems.forEach(item => { totalCost += Number(item.cost); if (item.priority === 'Critical') criticalCount++; const card = document.createElement('div'); card.className = `tdt-item-card tdt-p-${item.priority.toLowerCase()}`; // Color for priority tag let prioColor = '#9ca3af'; if(item.priority === 'Critical') prioColor = '#dc2626'; else if(item.priority === 'High') prioColor = '#ea580c'; else if(item.priority === 'Medium') prioColor = '#d97706'; else if(item.priority === 'Low') prioColor = '#059669'; card.innerHTML = `${escapeHtml(item.title)}
$${Number(item.cost).toLocaleString('en-US')}
${item.priority}
${item.category}
${item.status}
${escapeHtml(item.desc)}
`;
grid.appendChild(card);
});
// Update Stats
document.getElementById('tdt-stat-cost').innerText = '$' + totalCost.toLocaleString('en-US');
document.getElementById('tdt-stat-count').innerText = debtItems.length;
document.getElementById('tdt-stat-critical').innerText = criticalCount;
}
function renderTable() {
const tbody = document.getElementById('tdt-manage-body');
tbody.innerHTML = '';
debtItems.forEach(item => {
const tr = document.createElement('tr');
tr.innerHTML = `
