BOZP App Modernization & PDF Generator

Job ID: 40290147

Budget: €750 – €1,500 EUR

BOZP Guide – Mini Technical Specification
SHORT DESCRIPTION FOR A FREELANCER (project brief / request)
Project title

Modernization of the application “BOZP Guide” (JSON + PDF generator)

Short description

We are looking for a developer to modernize an existing internal BOZP application.
The goal is to create a simple web application that:

displays BOZP chapters (text + image),

allows the user to answer YES / NO / NOT APPLICABLE,

remembers the answers,

after completing a contact form generates a BOZP PDF checklist,

allows easy editing of chapter content through a form (admin),

stores all content in JSON files (no database).

Preferred technologies

Backend:

PHP 8+

Frontend:

HTML
CSS
JavaScript (no frameworks)

PDF generation:

Dompdf / mPDF

Data storage:

JSON files


A working admin form for editing a single chapter (saving data to JSON).
COMPLETE PROJECT DESCRIPTION (technical specification)
Project goal

Replace the old application (PHP ~2010) with a modern, maintainable solution where:

content (questions, texts, links) is separated from application logic,

the PDF output remains preserved (BOZP checklist),

the application can be edited long-term without modifying the code.

Functional parts of the system
A) BOZP Guide (frontend)

Displays chapters sequentially.

Each chapter contains:

title

question text

optional image

Answers:

YES
NO
NOT APPLICABLE

Behavior:

YES / NOT APPLICABLE → next chapter
NO → explanation + links expand, button “NEXT”

Answers are stored in memory:

session or JavaScript object
B) Contact form (at the end)

Fields:

First and last name

Company

Email

After submission:

answers + contact information are sent to the server

PDF is generated

PDF is offered for download

C) PDF output (critical part)

The PDF corresponds to the existing BOZP checklist.

Table structure:

Chapter YES / NO / NOT APPLICABLE Recommended action Responsible Deadline Signature

Rules:

YES / NO / NOT APPLICABLE marked with “X”

Recommended action only appears when answer = NO

Responsible / Deadline / Signature remain empty

The PDF is:

generated automatically from answers

generated from an HTML template