Table of Contents
projects:pokerface
Pokerface
User Guide
Facial expressions drawn from numeric values for components of feelings… artificial feelings of a robot or LLM chatbot.
keyboard shortcuts
- ctrl-k - toggle the HUD on and off
- ctrl-q - start and stop the macro recorder
- ctrl-p - playback the current macro
chat commands
- focus 20 (0/100)
- pleasure 70 (0/100)
- hud 0 (0/1)
Developer Guide
Source code: https://gitlab.com/voyc/pokerface
Version History
2026.06.?? -
2026.06.?? - Support feeling words new animation command
- add animate command to change facial expression gradually
- add table of feeling words
- let interpreter translate feeling words into animate commands
- add feeling links and an explanation to the about page
2026.06.11 - blend command-driven prototype with original program
- integrate command-engine, macro recorder, chat bus, test suite into original app
- refactored files for separation of function into separate files
- pulled js and css out of index.html into pokerface.css and main.js respectively
- pokerface now draws the face, controller handles the sliders, layout is done in index.html
- engine is now a generic command-driver and poker handles the app-specific command processing
- all programs upgraded to modern js
- use let or const instead of var
- use class instead of function with prototype
- all js files are now modules and use import and export
- load scripts with defer
- added a package.json manifest file for use with test-suite.js
2026.06.11 - blend command-driven prototype with original program
- Integrate command-engine, macro recorder, chat bus, test suite.
- refactored files for separation of function into separate files
- pulled js and css out of index.html into pokerface.css and main.js respectively
- pokerface now draws the face, controller handles the sliders, layout is done in index.html
- engine is now a generic command-driver and poker handles the app-specific command processing
- all programs upgraded to modern js
- use let or const instead of var
- use class instead of function with prototype
- all js files are now modules and use import and export
- load scripts with defer
- added a package.json manifest file for use with test-suite.js
beb1afa (HEAD → master) Rewrite test-suite to expose globals 7d3532e Reorg and prettify the about file c4e57ec Add command-architecture, chat, testing per Gemini e6e5d70 Reorg nvc and levels into about a9a4084 Move liner files to new liner folder
2026.06.11 - blend command-driven prototype with original program
- Integrate command-engine, macro recorder, chat bus, test suite
- refactored files for separation of function into separate files
- pulled js and css out of index.html into pokerface.css and main.js respectively
- pokerface now draws the face, controller handles the sliders, layout is done in index.html
- engine is now a generic command-driver and poker handles the app-specific command processing
- all programs upgraded to modern js
- use let or const instead of var
- use class instead of function with prototype
- all js files are now modules and use import and export
- load scripts with defer
- added a package.json manifest file for use with test-suite.js
2026.06.11 - blend command-driven prototype with original program
- Integrate command-engine, macro recorder, chat bus, test suite.
- refactored files for separation of function into separate files
- pulled js and css out of index.html into pokerface.css and main.js respectively
- pokerface now draws the face, controller handles the sliders, layout is done in index.html
- engine is now a generic command-driver and poker handles the app-specific command processing
- all programs upgraded to modern js
- use let or const instead of var
- use class instead of function with prototype
- all js files are now modules and use import and export
- load scripts with defer
- added a package.json manifest file for use with test-suite.js
Client-side javascript apps. I want to implement tags and a release history. I don't want to use any tools other than git. What are some common formats I can use so the log and tags and release history do not duplicate each other but work together to communicate to users and developers.
git tag -a v1.3.0 -m “$A” $A = git log $B..HEAD –oneline –grep='^feat\|^fix')“ $B = git tag -a v1.3.0 -m "$( git log ..HEAD –oneline –grep='^feat\|^fix') ”
$C git describe –tags –abbrev=0