Sign inSign up

beerst/earest

By beerst

•Updated about 1 month ago

EARe ("eerie") Standard Transforms for solution modeling, design, and implementation

Image
Developer tools
Data science
Databases & storage
1

5.2K

beerst/earest repository overview

⁠EARe ("eerie") Standard Transforms for solution modeling, design, and implementation

⁠visualize, validate, verify, transform, present

Includes:

  • earest: bash script described below
  • doearest (dorun⁠ script with common options):
    • From image beerst/earest, runs container command earest, binds current directory, binds local directory(s), adds specified docker options to "run" or "exec" command, applies dorun option(s)
    • Runs earest with option(s) -s -pP -n, plus runtime options and arguments
  • doearestudio (dorun script to launch EARe Studio web-UI):
    • From image beerst/earest, runs container command earest, binds current directory, binds local directory(s), creates/launches web-UI processing of container input/output (as web app for interactive workflow), applies dorun option(s) -K -W
    • Runs earest with option(s) -s -p -P, plus runtime options and arguments
  • /etc/earest_icon.png, /bin/earest_genWebUI.sh: for reference, earest app icon, default/reference Studio web-UI gen-script

⁠About earest:


EARe ("eerie") Standard Transforms for solution modeling, design, and implementation: visualize, validate, verify, transform, present

Usage: earest [-e | -x] [-s]  [ [-S | -t] transform-type1[@][opt1=val1:...]  [-T transform-file1[@opt1=val1:...]  [-o global-opt1=val1:...]  [-V version]  [-pHurIqvh]  [EAReML/XML-file]"

Options:

EAReML/XML-file           EARe design markup/XML file to process (default: standard-input)

-e                        Compile EARe design from EARe markup (default)
-x                        Compile EARe design from EARe XML

-s                        Apply standard options determined from entity types, relationships, and data
-S transform-type/opts    Standard transform option(s) (in same format as -t) to replace default options for standard transform, or with empty options to delete standard transform; may be repeated

-t transform-type/opts    Standard transform to apply, with transform-specific option(s), as transform-tag[@opt1[=val1]][:opt2[=opt2]]...; may be repeated
-T transform-file/opts    Transform file to apply, with transform-specific option(s), as file-name[@opt1[=val1]][:opt2[=opt2]]...; may be repeated

-o global-opts            Option(s) to apply to _every_ transform, as opt1[=val1]:opt2[=val2]...; may be repeated; non-letter alternative to "=" # OK

-p                        "Publish" results by adding overall heading and per-section headings
-P                        "Publish" as content inlined with other HTML
-H                        In pubished output include summary of transforms and global options applied and each transform's available options (note options _changed_ are always summarized with -p)
-u                        Preserve ("un-render") plaintext output of transforms; do not render as HTML in published content

-V version                Version to assign to presentation and to published file; DEPRECATED: if version specified, _also_ specified to transforms as global option "timestamp" (default: current time as YYMMDDhhmmss)

-n                        Save output to title-normalized file (with type-based extension) instead of standard-output; based on evident or default focus
-r                        Rename (or save) source file (or standard-input) to title-normalized filename (automatic if source filename starts with placeholder underscore "_")

-I                        (DEPRECATED) Get source content from stdin, output results to stdout
-q                        Show minimum or no progress and summary messages
-v                        Show maximum progress and summary messages
-h / -qh / -hs            Show all help, "quick help", or help with standard transforms
-h t1 t2 ...  OR  -t t1 -t t2 ... -h    Show more about standard transform(s) t1 et al

Examples: (each generates an HTML presentation file or publication-ready "pub file")

: earest -s -p myDesign_EARe.txt                                  # Publish-ready myDesign presentation, using standard transforms and options
: earest -s -S ERD@layoutDir=TB myDesign_EARe.txt                 # Custom ERD layout direction
: earest -s -S ERD@ myDesign_EARe.txt                             # _No_ ERD transform ("@" with no arguments)
: earest -t ERD myDesign_EARe.txt                                 # _Only_ ERD transform
: earest -t WARN -t ERD  myDesign_EARe.txt                        # Just warnings and ERD
: earest -T myTransform.xsl myDesign_EARe.txt                     # Apply "myTransform.xsl" transfor
: earest -t ERD -T myTransform.xsl@myOpt=1 myDesign_EARe.txt      # ERD and myTransform with myOpt
: earest -h                                                       # Show full help
: earest -hs (or -ht)                                             # Show all standard transform names and descriptions
: earest -b ERD                                                   # Show ERD transform option descriptions, possible values, and defaults

Standard transforms: (-s to auto-select, or e.g. "-t WARN" to specify)

CXD        Context Diagram with Ecosystem (BETA)
DD         Data Dictionary
EAReXML    EARe Design/Data as EARe XML
WARN       Warnings, NOTEs, DOCs
ERD        Entity-Relationship Diagram
SUMMARY    Summary
DT         Data Tables
DATA_SQL   Data Tables as SQL
SCHEMA_SQL Table Schema as SQL
UCD        Use Case Diagram
JIRA_CSV   Applied Use Cases as Jira Scrum import CSV
PT_CSV     Applied Use Cases as Pivotal Tracker import CSV
UCT        Use Case Specifications

Global options applied to all transforms [default]: (specify by "-o name=value")

timestamp  Date and time code of transform(s) application  [YYMMDDhhmmss]
version    Version information                             [date/time of transform(s) application, as YYYY.MM.DD_hh:mm]
_other_    Transform option applied to ALL transforms (or ignored when n/a)

For more about specific standard transforms(s):

: earest -ht transform1 transform2 ...
   OR  
: earest  -t transform1 -t transform2 ...  -h

⁠More about doearest:

doearest: From image beerst/earest, runs container command earest, binds current directory, binds local directory(s), adds specified docker options to "run" or "exec" command, applies dorun option(s) 
- Runs earest with option(s) -s -pP -n, plus runtime options and arguments
- Uses compact dorun syntax, typical default options, target command options and arguments, and enhanced execution features; requires bash shell

Usage:                   doearest [dorun-opts-continued : ] command-line-continued

Runs:                    [dorun] -b -B /Users/beerst/Downloads@SAVED -B /tmp@/tmp -d -i ... beerst/earest : earest -s -pP -n ...

Installs/updates dorun:  docker run --rm [pull_opt]  beerst/dorun ... >/tmp/dorun_exec__doearest

For script summary:      doearest -hS :  (note trailing ":" colon)
For more about dorun:    doearest -qh :

Created 2026.09.15 14:20 by: [dorun] -s 'doearest:-b -B /Users/beerst/Downloads@SAVED -B /tmp@/tmp -d -i::' beerst/earest -s -pP -n

Usage tips:
- Make script executable:                                             chmod a+x doearest
- Adjust dorun runtime options, tail-delimit with colon ":"; e.g.:    doearest -v -b : ...
- Preview eXecution commands with context, but don't execute:         doearest -X ... : ...
- Use redirected or piped input, e.g. instead of file or terminal:    doearest -I ... : ...
- Backslash-escape quoted command options (e.g. those with spaces):   doearest -a 123 -b \'Hello World\'
- Force-update installed target image (if applicable):                doearest -u : ...
- Force-update script's installed dorun utility:                      doearest -U : ...
- Change script defaults with associated environment variables:       SCRIPT_CMD, IMAGE_SPEC, DORUN_OPTS, RUN_OPTS, DORUN_IMAGE_SPEC, DORUN_UPDATE_RUN_OPTS
- Inspect to learn or adjust specs (e.g. by "DORUN_OPTS='-b'"):       doearest -S :
- (Re)install latest release of this script (if applicable):          docker run --pull always beerst/earest cat doearest >doearest; chmod a+x doearest

⁠More about doearestudio (EARe Studio):

Web-UI generation produces a web-UI template CGI file, then customizes it in a combination of three (3) ways:

1) During web-UI setup, e.g. by inline-substituting values specified or derived from the dorun command line

2) During ongoing user interaction...
- Outputs the web-UI produced by the customized web-UI template
- When web-UI "applied" by user: 
- Optionally processes the source input to produce dot-options to apply during target command-line execution
- Executes the target command line with optional dot-options, to process command output
- Outputs updated web-UI produced by the customized web-UI section specs or web-UI generator

3) During target command execution...
- Inline-substitutes web-UI blocks based on web-UI placeholders output during target command execution, e.g. 
- Inline-substitutes web-UI options specified by the web-UI placeholders, e.g.

Web-UI launch installs an Apache/httpd web server in the target container, copies the generated web-UI HTML file and container's image-name/docs into it, and outputs the (initial) web-UI HTML, ready for ongoing user interaction.
URL to launch:                         [host]:80//do/earestudio
Web-UI name:                           earestudio
Container:                             dorun_wui__earestudio__80
URL or port:                           80
Default source file types or n/a:      .txt, .eare, .csv               (as IANA media types list)
Focus file candidates or n/a:          /_EARe.*.txt/                   (as regular expression)
Focus fIle specification command:      ls -t -d * /earest/* /SAVED/* 2>/dev/null |grep -E '_EARe.*.txt' |head -1
UI feature omissions or n/a:           
Custom UI generation command or n/a:   earest_genWebUI.sh
Auto-apply interval (seconds) or n/a:  
Applied image specification:           beerst/earest
Applied command line:                  earest -s -p -P [source-file]
dorun image specification:             beerst/dorun
Created 2026.09.15 14:21 by:           [dorun] -X -K -b -B /Users/beerst/Downloads@SAVED -B /tmp@/tmp -w earestudio:80:.txt,.eare,.csv:/_EARe.*.txt/ -W :earest_genWebUI.sh -d  beerst/earest : earest -s -p -P         
                                     (also available for reference as persistent comment at top of web-UI generated HTML)
Temporary generated references...
Setup progress messages:             /tmp/dorun_httpdSetup.log
Generated web-UI CGI file:           /tmp/earestudio
Default web-UI template:             /tmp/dorunWebUI_template.html
Default web-UI generation script:    /tmp/dorunWebUI_genUI.sh
dorun exec file added to container:  /tmp/dorun_exec

Tips for launching remote-hosted web-UI:
: docker login                             # Log into docker for access to remote-hosted images including "dorun"; use sudo if needed
: chmod a+r _file1 _file1_ ...             # Make readable any files wanted accessible to web-UI file discovery (and/or -a-r to make inaccessible)
: doearestudio -uU :  # Run dorun script generated prior by -s, optionally force-update installed target image (-u) and dorun utility (-U)

⁠BUILD SUMMARY:

Summary date:               Tue Sep 15 14:21:23 PDT 2026
Help with build/deploy/release:     make help-build
Build summary:              earest_summary.txt  	(or: make summary)
README markdown:            earest_README.md  	(or: make readme)
Help with run/launch/admin: earest_admin_help.txt  	(or: make help-admin)
makefile for admin tasks:   earest_admin_makefile  	(for use on host system)

Settings from make command-line arg=value, dockerfile directives, env variables, or defaults:
  Dockerfile:               earest_dockerfile  	(default: most-recently-touched file in current dir with name *[dD]ockerfile*)
  Image      VERSION:       2609151421    (default: "WIP")
  Image      NAME:          earest  	(default: basename of dockerfile [first] WORKDIR)
  Base image BASE:          ubuntu  	(from dockerfile FROM)
  Docker     BUILD_ARGS:    NA=n/a        (from environment or n/a, to apply during build)
  Git        GIT_REPO:        	(from git environment or n/a; uncommitted files or n/a: )
  Docker     DOCKER_REPO:   beerst  	(required for "release" and for _remote_ "deploy", or n/a)
  Options: (typically from same-named dockerfile ARG/ENV)
    OPTS_RUN_TEST:          
    OPTS_RUN_PROD:          
    OPTS_LAUNCH_TEST:       
    OPTS_LAUNCH_PROD:       
    OPTS_SHELL_TEST:        
    OPTS_SHELL_PROD:        

Available make actions:
  build, build-clean, deploy, release, summary, help

Custom actions from dockerfile ARG/ENV or environment variables OPTS_CUSTOM_action, or applied directly by earest_admin_makefile (or n/a):
  
Uncommited local changes not pushed to git repo  (or n/a):
  

Files and directories COPYed from sources to image destination (or n/a):
  earest        /bin/
  compEARe.sh compEAReDesign.sh compEAReData.sh compAUC_SS.sh compPT_CSV.sh  /bin/
  eareEntityAndAttributeSets.xml eare_EAReXML.xsl contextDiag_HTML.xsl dataDict_HTML.xsl eareWarnings.xsl erd_HTML.xsl summary_HTML.xsl tableData_HTML.xsl tableData_SQL.xsl tableSchema_SQL.xsl useCaseDiag_HTML.xsl useCasePT_CSV.xsl useCaseTable_HTML.xsl  /etc/
  doearest doearestudio  /bin/
  earest_icon.png  /etc/
  dorun_exec earest_genWebUI.sh  /bin/
  eareDepths_Modeling_tips.pdf eareDepths_InfoDesign_tips__func.pdf eareDepths_InfoDesign_tips__phys.pdf earePractices_InfoDesign_tips__func.pdf earePractices_InfoDesign_tips__phys.pdf  /etc
  earestPub_top.html earestPub_bottom.html       /etc/
  earest_admin_makefile earest_dockerfile                  .
  earest_summary.txt earest_admin_help.txt earest_README*  .
 
README markdown for e.g. image/usage description in repository (or n/a):
  earest_README.md

Tag summary

Content type

Image

Digest

sha256:f800d2164…

Size

72.5 MB

Last updated

about 1 month ago

docker pull beerst/earest