#features #html #markdown #prompt-engineering #web-devpopover and popovertarget= to associate elements with popovers. This can replace tooltips, dropdowns, menus, toasts, etc.formmethod="dialog" to forms inside <dialog> elements to close the dialog instead of submitting.name= attribute to details for accordion-like behaviorloading="lazy" to images and iframes to load only when user scrolls to themfetchpriority="high" (or low) to image, script, link rel="preload" ... to prioritize loadinginputmode= to inputs for better virtual keyboard experience. Values can be text, decimal, numeric, tel, search, email, url.autocomplete= to form inputs for better autofill experience. Values are extensive and multiple values are allowed. E.g.: name, email, username, new-password, current-password, organization, street-address, postal-code, country, tel, url, cc-number, cc-exp, ...list= to inputs to associate with a <datalist> for suggestions/autocomplete.autocapitalize= to inputs and textareas to control capitalization behavior. Values: off, none, sentences, words, characters.enterkeyhint= to inputs and textareas to customize the enter key on virtual keyboards. Values: enter, done, go, next, previous, search, send.contenteditable="plaintext-only" to disable rich text formatting on editable elementsinert to disable user interaction. Useful for modals to disable background content.form= to associate inputs/buttons with a form outside the form element.download= to anchor tags to suggest file download with a specific filename.capture="environment" to file input to directly open the outward facing camera/mic on mobile devices. "user" opens the inward facing camera/mic. Use accept= values of audio/*, video/* or image/* to specify media type.spellcheck="false" to disable spell checking on inputs or textareas, e.g. for code snippets.<dialog>: for native modals, popups, etc. Methods: show(), showModal(), and close().<meter>: for displaying scalar values within a known range, e.g. disk usage, battery level, etc.<progress>: for displaying progress of a task. Similar to meter but indicates progress rather than a static value.<track kind="captions">: for adding captions/subtitles to <video> elements.<data value="...">: to capture values in a more query-able way than data-* attributes.#ai-coding #best-practices #code-agents #github #html #markdown #optimization #prompt-engineering #web-dev<script> tag in XML will become the new way of rendering RSS/Atom. This is one of the rare "break-the-web" changes from browsers. Simon Willison #html #web-dev#html #web-dev#best-practices #future #web-dev#cloud #code-agents #web-dev#web-dev#web-dev #very-harduv run llmform.py --dir ~/notes --dir ~/personal--dir) for text content useful to fill the field, and fills it and prints a report of what was filled (with level of confidence and possible alternatives) and what was not.#html #web-dev#document-conversion #html #markdown #web-dev#document-conversion #web-dev#web-dev#github #html #llm-ops #web-dev#github #markdown #web-dev #ai-coding#ai-coding #code-agents #dev #prompt-engineering #web-dev#html #speech-to-text #web-dev#ai-coding #code-agents #dev #github #html #markdown #prompt-engineering #web-dev#chatgpt #web-dev#hosting #image-generation #web-dev#document-conversion #html #web-devjq for HTML. #github #html #markdown #prompt-engineering #web-dev#cloud #html #server #web-dev#document-conversion #html #markdown #web-devWEBUI_SECRET_KEY=... uvx --python 3.11 open-webui serve #llm-ops #web-dev
Text generation Web UI is less so.
KoboldAI,
LMQL,
LM Studio,
GPT4All, etc are far behind.#ai-coding #automation #code-agents #html #optimization #prompt-engineering #web-devgid to each element.#html #web-dev #write#chatgpt #cloud #github #hosting #html #server #web-dev#html #web-dev#github #html #web-dev#html #markdown #web-dev#html #web-dev#future #html #web-dev#web-dev#hosting #prompt-engineering #server #web-dev#prompt-engineering #web-dev#future #html #prompt-engineering #web-dev#future #html #markdown #web-dev#github #html #web-dev