PROMPTINATOR 2.4.6 — COMPLETE PHP / HTML STUDIO ============================================= WHAT THIS PACKAGE IS This is the full shared-hosting edition of Promptinator. It carries over the polished Studio and syntax guide from the Node version, but the interface runs as ordinary HTML, CSS, and JavaScript. No build step is required. INSTALL IT 1. Back up or rename the older Promptinator folder on your server. 2. Open this ZIP on your computer. 3. Upload EVERYTHING inside the ZIP directly into your Promptinator folder. 4. Keep the api folder and its generate.php file together. 5. Visit the folder URL, for example: https://rfsafe.org/class/promptinator/ MAIN PAGES - index.html Full Promptinator Studio (the normal start page) - index.php Optional fallback that serves index.html - syntax.html Full visual syntax guide and shortcode builder - endpoint-guide.html Editable email/POST labs, live embed code, payload map, and copy-ready PHP receiver code - endpoint.php Safe test receiver that displays POSTed fields without saving OTHER REQUIRED FILES - studio.js Studio behavior and built-in prompt library - studio.css Complete Studio and syntax-guide design - syntax.js Interactive syntax-guide builder - promptinator.js Dependency-free dynamic prompt engine - promptinator.css Dynamic-field dialogs and visual builder - api/generate.php Optional server-side OpenAI request bridge REQUIREMENTS - Any web server capable of serving HTML, CSS, and JavaScript. - PHP is needed for the optional Run with OpenAI button, index.php fallback, and bundled endpoint.php test receiver. The Studio itself remains static. - The OpenAI button also needs outbound HTTPS through PHP cURL or allow_url_fopen. The rest of the Studio works without that connection. - No Node.js, npm, database, build command, or writable data folder is needed. - Normal permissions are enough: folders 755 and files 644. Do not use 777. SUBDIRECTORIES All internal links begin with ./ instead of /. This is intentional. The same package can run from /promptinator/, /class/promptinator/, or another subdirectory without editing paths. EDITING EXISTING FIELDS Open the Template tab. Highlight one complete bracket field (or place the cursor anywhere inside it), then click Edit field. The visual builder reloads the current settings and can change the field type, choices, name, or default. INTERNET RESOURCE FIELDS Each I field supplies one URL. Clicking it opens a dropdown, but changing the dropdown does not alter the prompt automatically. Select & preview confirms the URL, closes the chooser, and opens a large preview. The chosen domain chip can reopen that preview at any time. When a prompt needs two or more sources, use two or more I fields. This keeps each choice visible, editable, and individually previewable. Raw URLs automatically display their shortened domain name. Authors may add an optional friendly name with Name=>URL in the visual builder. Existing I fields remain compatible. Examples: [I-source-|https://example.com|https://openai.com|~https://example.com~] [I-primary_source-|Guide=>https://example.com|https://openai.com|~https://example.com~] [P] [I-supporting_source-|https://openai.com|https://w3.org|~https://openai.com~] Some websites block embedded previews. The preview always includes an Open in new tab button so the resource remains accessible when embedding is refused. LINE BREAKS AND FORM LAYOUT Every template editor includes a ¶ Line break button. It inserts [P], which renders a real new line in the visible form and a newline in the completed prompt. It is a layout marker, not a form field, so it is not counted or sent as a submitted label/value pair. Existing literal
,
, and
text is also recognized as a line break. Promptinator still treats all other template HTML as plain text. NAMING EACH FORM The Template tab includes a Form name field. Built-in prompts fill it automatically (for example, Melanie's bedtime story), and authors can edit it. The form name becomes the email subject and the POST _formTitle value. This is separate from the short E action label such as Send or Submit. When embedding Promptinator directly in HTML, set the same metadata with:
...
EMAIL AND POST SUBMISSIONS Use the single E field when the completed form should leave Promptinator: - An email destination creates a Send button and opens a populated message in the visitor's normal mail application. - An HTTP or HTTPS destination creates a Submit button and sends a standard POST request containing the form name as _formTitle, message, and every named field. - The E destination is routing information and is not inserted into the completed AI prompt. Examples: [E-send_estimate-~office@example.com~] [E-submit_estimate-~https://example.com/form-handler~] The visual Insert/Edit Field builder accepts either destination in one field, detects the route automatically, and defaults the label to Send or Submit. Email delivery still depends on the visitor completing the message in their mail application. A POST destination must be a server endpoint you control. The Endpoint Guide includes two complete editable examples. Change the form name or destination directly, click the blue fields, or use Edit template to open the same visual Insert/Edit Field builder used by the Studio. Its live embed code changes with the example, making the page suitable for teaching or demonstrating the email and POST routes. OPENAI PRIVACY Each visitor supplies their own OpenAI API key. The key is kept only in the current page's memory, is sent to api/generate.php for the immediate request, and clears on refresh or close. This package does not save it in browser storage, a database, or a file. TROUBLESHOOTING - A directory listing means index.html was not uploaded into the folder root. - A plain or broken page usually means studio.css or studio.js is missing. - Version 2.4.6 adds ?v=2.4.6 to browser assets. Upload every file so older cached JavaScript and CSS are replaced together. - If only Run with OpenAI fails, ask the host whether PHP can make outbound HTTPS requests and whether the cURL extension is enabled. - If your host prefers PHP indexes, index.php is included as a fallback.