Reference — HTMQL Documentation

Reference

Folder Structure

  • config.json: The configuration file read by the server executable
  • assets: Static site assets, publicly available via /asset
    • logo.png: A generic logo for the demo application
  • libs: Frontend library files, publicly accessible via /lib
    • HTMX library files: AJAX, CSS Transitions, WebSockets and Server Sent Events directly in HTML, without writing JavaScript
    • Hyperscript library files: DOM manipulation without writing JavaScript
    • tablekit.js: Interactive data tables with sorting, filtering, pagination, and loading indicator
    • Leaflet library files: Interactive mapping
    • Missing.css library files: near-classless CSS framework
    • toastui-editor-all.min.js / toastui-editor.min.css: Toast UI Editor - Markdown WYSIWYG editor (see Markdown editor and rendering)
    • style.css: Extends Missing to provide opinionated defaults for the demo application (framework file - see Styling)
    • custom.css: (optional) App-specific styles; add it here and link it after style.css in system/header.html (see Styling)
    • print.css: Reference print styles to copy into print/PDF pages (see Styling → Designing for print and PDF)
  • migrations: Contains .sql files for the Migrations feature (see Database Migrations above)
    • This folder is empty by default
  • pages: Contains .htmql files for serving pages to the user and interacting with the database (see Pages above)
    • index.htmql: The default page served to the user when they visit the root URL
    • hello.htmql: A simple page that says "Hello, World!"
  • system: Special files used by the server
    • header.html: The HTML header file that will be injected into the HTMQL pages (also hosts the built-in unsaved-changes guard - see Unsaved-Changes Detection above)
    • footer.htmql: The HTML footer file that will be injected into the HTMQL pages
    • favicon.ico: The favicon for the application
    • 404.html: The HTML page served to the user when they visit a non-existent URL
    • success.html: The HTML page injected between the header and page after a critical database operation succeeds (see SQL Confirmation Messages above)
    • error.html: The HTML page injected between the header and page after a critical database operation fails (see SQL Error Handling above)
    • login.html: (optional) A custom login form for SQL authentication; replaces the built-in form when present (see Custom Login Page above)
  • templates: Contains reusable .html templates to be used within pages
    • data-table-bar.html: Data table header for the included tablekit.js