Quickstart bones

Nutshell

Config

By default, bones CLI uses dbhell-bones, an inhouse, file-system, NodeJS database which will save every record (pretty printed) as a separate JSON file relative to the directory where you issue the CLI commands. This makes it ideal for development and testing - you can easily review every change by opening these files in a text editor.

You can specify a root directory for that data by adding it to a .env file in the same folder where you issue your CLI commands.

DATADIR=./.appdata/quickstart/
# Preserve test data
set NOW $(date +%Y%m%d%H%M%S)
mv $DATADIR $DATADIR_$NOW
# or just clear any test data
rm -rf $DATADIR

Command Overview

<runtimeBones> <ribName> [<params>] [--propNames=propValues]

Breakdown:

Notes:

Playtime

git clone https://gitlab.com/eliobones/bones.git
cd bones
npm i
npm run bones -- pingT
npm run bones -- takeupT shoppinglist --mainEntityOfPage=ItemList --name="Today's Shopping List" --alternateName="Don't forget the milk!"

thing Action --schema
[
  "FailedActionStatus",
  "CompletedActionStatus",
  "ActiveActionStatus",
  "PotentialActionStatus"
]

set Potential --mainEntityOfPage=Action --Action.actionStatus=PotentialActionStatus
npm run bones -- takeonT shoppinglist bread $POTENTIALACTION
npm run bones -- takeonT shoppinglist eggs $POTENTIALACTION
npm run bones -- takeonT shoppinglist cheese $POTENTIALACTION
npm run bones -- takeonT shoppinglist milk $POTENTIALACTION

Run 1 at a time, or in suggested groupings.

npm run bones -- pingT

npm run bones -- takeupT shopping --name="Today's Shopping List" --alternateName="Don't forget the milk"

npm run bones -- takeonT shopping milk  --mainEntityOfPage=Action  --Action.actionStatus=PotentialActionStatus

npm run bones -- takeonT shopping honey  --mainEntityOfPage=Action
npm run bones -- updateT honey --Action.actionStatus=PotentialActionStatus

npm run bones -- readT shopping
npm run bones -- listT shopping

npm run bones -- updateT honey --Action.actionStatus=CompletedActionStatus
npm run bones -- listT shopping

npm run bones -- unlistT shopping milk
npm run bones -- listT shopping

npm run bones -- enlistT shopping milk
npm run bones -- listT shopping

npm run bones -- destroyT milk
npm run bones -- listT shopping

npm run bones -- unlistT shopping milk
npm run bones -- listT shopping

npm run bones -- unlistT shopping milk
npm run bones -- listT shopping

npm run bones -- enlistT shopping milk

npm run bones -- optimizeT shopping

npm run bones -- takeonT shopping milk  --mainEntityOfPage=Action  --Action.actionStatus=CompletedActionStatus

npm run bones -- optimizeT shopping


for D in sugar biscuits banana thoseCrispsYouLike
   mkdir -p $D
   echo '{ "identifier": "'$D'" }' > ./$D/thing.json
end

npm run bones -- inflateT shopping