add README

master
benedict 2026-05-06 03:26:57 +07:00
parent bee8763c67
commit 7bc292bbd4
1 changed files with 69 additions and 0 deletions

69
README.md Normal file
View File

@ -0,0 +1,69 @@
# 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`