70 lines
2.3 KiB
Markdown
70 lines
2.3 KiB
Markdown
# Employee Workstation Compliance Auditing
|
|
|
|
ISO Compliance Reporting for Employee Workstations. This tool aggregates workstation audit reports into monthly summaries (Excel and PDF) for compliance monitoring.
|
|
|
|
## 🚀 Overview
|
|
|
|
This project provides a centralized way to track workstation compliance across the organization. It processes individual `.report.json` files generated from workstation audits and produces high-level management reports.
|
|
|
|
### Key Features
|
|
- **Excel Export**: Detailed matrix of all employees and their assertion results (PASS/FAIL).
|
|
- **PDF Export**: Professional summary report generated via [Typst](https://typst.app/).
|
|
- **Multi-OS Support**: Includes playbooks for Arch Linux, macOS, and Windows.
|
|
- **Automated Fallback**: Automatically processes the latest available month if no specific month is requested.
|
|
|
|
## 🛠 Prerequisites
|
|
|
|
- [Bun](https://bun.sh/) runtime
|
|
- [Typst](https://github.com/typst/typst) CLI (for PDF generation)
|
|
|
|
## 📁 Directory Structure
|
|
|
|
```text
|
|
.
|
|
├── playbooks/ # OS-specific compliance playbooks
|
|
│ ├── archLinux.yaml
|
|
│ ├── mac.yaml
|
|
│ └── windows.yaml
|
|
├── reports/ # Raw workstation reports
|
|
│ └── YYMM/ # Reports organized by YearMonth (e.g., 2605)
|
|
│ └── employee_name/ # Individual employee directories
|
|
│ └── *.report.json
|
|
├── templates/ # PDF templates
|
|
│ └── workstation-summary.typ
|
|
└── generateMonthlySummary.ts # Main report generator script
|
|
```
|
|
|
|
## 🏃 Usage
|
|
|
|
### Install Dependencies
|
|
```bash
|
|
bun install
|
|
```
|
|
|
|
### Run Report Generation
|
|
By default, it will attempt to generate a report for the current month (`YYMM`).
|
|
|
|
```bash
|
|
# Generate report for current month
|
|
bun start
|
|
|
|
# Generate report for a specific month (e.g., May 2026)
|
|
bun run generateMonthlySummary.ts 2605
|
|
```
|
|
|
|
### Development
|
|
```bash
|
|
bun dev
|
|
```
|
|
|
|
## 📊 Output
|
|
The script generates two files in the corresponding `reports/{YYMM}/` directory:
|
|
1. `summary_{YYMM}.xlsx`: An Excel file containing a summary sheet and a detailed assertion matrix.
|
|
2. `summary_{YYMM}.pdf`: A professional PDF summary report.
|
|
|
|
## 📜 Compliance Playbooks
|
|
The project includes reference playbooks in the `playbooks/` directory for different operating systems:
|
|
- `archLinux.yaml`
|
|
- `mac.yaml`
|
|
- `windows.yaml`
|