Для использования необходимо скачать готовый исполняемый файл в директорию из переменной окружения PATH.
Программа бесплатная, исходный код открыт, разрешается делать свои сборки и включать в сторонние проекты со ссылкой на продукт.

По мере возможности оказываются бесплатные поддержка и консультации, более подробно на странице Контакты

Скачать для Linux
pghtml

Скачать для Windows
pghtml.zip


Для продвинутых пользоватетелей есть полный tar-архив с исходным кодом, исполняемыми файлами и примером.

Скачать tar-архив
pghtml_all.tar


Командная строка

При промышленном использовании установка осуществляется из командной строки:
1. Утилита wget загружает исполняемый файл в папку /usr/bin
wget --directory-prefix=/usr/bin https://pghtml.org/files/download/pghtml

2. Команда chmod устанавливает нужные права для запуска
chmod a+x /usr/bin/pghtml


Пример установки
[root@pgsuite ~]# wget --directory-prefix=/usr/bin https://pghtml.org/files/download/pghtml
--2024-07-06 10:00:42--  https://pghtml.org/files/download/pghtml
Resolving pghtml.org (pghtml.org)... 194.67.205.60
Connecting to pghtml.org (pghtml.org)|194.67.205.60|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 83800 (82K) [application/octet-stream]
Saving to: ‘/usr/bin/pghtml’

100%[========================================================================>] 83,800      --.-K/s   in 0.001s

2024-07-06 10:00:42 (71.9 MB/s) - ‘/usr/bin/pghtml’ saved [83800/83800]

[root@pgsuite ~]# chmod a+x /usr/bin/pghtml


Создание службы

Для создания службы в операционной системе linux можно использовать скрипт service-create.sh:
1. Загрузить его и выполнить с параметрами pghtml
curl -s https://pghtml.org/files/download/service-create.sh | bash -s - -d [database] -hd [site-dir]

2. Запустить службу, проверить ее статус
systemctl start pghtml
systemctl status pghtml
pghtml status

Пример
[root@pgsuite ~]# curl -s https://pghtml.org/files/download/service-create.sh | bash -s - -d pgsuite -hd /tmp/example
pghtml service has been successfully created, use "systemctl start pghtml" to start

[root@pgsuite ~]# systemctl start pghtml

[root@pgsuite ~]# systemctl status pghtml
● pghtml.service - PGHtml (HTML template engine using PostgreSQL)
   Loaded: loaded (/etc/systemd/system/pghtml.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2024-07-06 12:12:10 MSK; 4s ago
 Main PID: 2620 (pghtml)
   CGroup: /system.slice/pghtml.service
           └─2620 /usr/bin/pghtml execute -d pgsuite -hd /tmp/example

Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.608 INFO  FILE_MAKER    processing example-full.pghtml template
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.645 INFO  FILE_MAKER    file example-full.html updated
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.645 INFO  FILE_MAKER    processing example-simple.pghtml template
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.648 INFO  FILE_MAKER    file example-simple.html does not update required
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.648 INFO  FILE_MAKER    processing example-template.pghtml template
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.648 INFO  FILE_MAKER    file example-template.html does not update required
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.648 INFO  FILE_MAKER    processing ru/example-simple-ru.pghtml template
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.651 INFO  FILE_MAKER    file ru/example-simple-ru.html does not update required
Jul 06 12:12:10 pgsuite.org pghtml[2620]: 2024-07-06 12:12:10.651 INFO  FILE_MAKER    directory synced successfully

[root@pgsuite ~]# pghtml status
PGHtml is HTML template engine using PostgreSQL
version 24.2.7, linux 64 bits

Parameters
  HTTP
    directory:         /tmp/example
    sync interval:     600s
    port:              5480
  database
    host:              127.0.0.1
    port:              5432
    database:          pgsuite
    host for service:  127.0.0.1
    user for service:  postgres
  administration
    port:              15480

Status info
  uptime:    0 00:01:12
  threads:   3


GitHub

Исходный код выложен в репозиторий GitHub


Лицензия

PGHtml распространяется под Лицензией MIT (лицензия открытого и свободного программного обеспечения).

Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное обеспечение»), безвозмездно использовать Программное обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, слияние, публикацию, распространение, сублицензирование и/или продажу копий Программного обеспечения, а также лицам, которым предоставляется данное Программное обеспечение, при соблюдении следующих условий:

Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного обеспечения.

ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ ГАРАНТИИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ, НО НЕ ОГРАНИЧИВАЯСЬ ИМИ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО КАКИМ-ЛИБО ИСКАМ, ЗА УЩЕРБ ИЛИ ПО ИНЫМ ТРЕБОВАНИЯМ, В ТОМ ЧИСЛЕ, ПРИ ДЕЙСТВИИ КОНТРАКТА, ДЕЛИКТЕ ИЛИ ИНОЙ СИТУАЦИИ, ВОЗНИКШИМ ИЗ-ЗА ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫХ ДЕЙСТВИЙ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.