From 7bc292bbd44e43b3ce3a543655788aebad464dcd Mon Sep 17 00:00:00 2001 From: benedict Date: Wed, 6 May 2026 03:26:57 +0700 Subject: [PATCH] add README --- README.md | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..bf50fed --- /dev/null +++ b/README.md @@ -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`