Skip to content

jinflow Setup Guide

Edit ~/.jinflow/config.yml:

live_root: ~/jinflow-live # where tenant instances live
  • live_root — where jinflow init creates tenant instances and jinflow make writes KLS files.

Supports ~ expansion and can also be set via JINFLOW_LIVE environment variable.

If you use domain packs or receive source data via a Data Landing Zone:

pack_root: ~/jinflow-packs # where domain pack repos are cloned
dlz_root: ~/jinflow-datalandingzone # where source data arrives
  • pack_root — where jinflow looks for packs by name. Only needed if you use --pack on init.
  • dlz_root — convention: {dlz_root}/{pack}/{tenant}/{source_system}/csv/.

Both can also be set via environment variables (JINFLOW_PACKS_ROOT, JINFLOW_DLZ_ROOT).

Terminal window
jinflow init --tenant my_analysis --source-system opale

This creates an empty tenant with a blank AFS — you write your own signals, theses, and dbt models.

Terminal window
jinflow init --pack millesime --tenant domaine_new --source-system opale

This copies the pack’s analytical framework into the tenant. The pack is a starter kit — after init, the tenant is independent.

{live_root}/{pack_or_default}/domaine_new/
afs/ ← analytical framework (your instruments, dbt models, contracts)
raw/ ← place your source CSVs here
build/ ← intermediaries (compiled SQL, enriched CSVs)
store/ ← KLS + SIS (built by make)
Terminal window
jinflow init --pack millesime --tenant domaine_new --source-system opale \
--dlzroot ~/jinflow-datalandingzone

This also links the tenant to its DLZ path for --sync.

All commands use pack.tenant notation:

Terminal window
jinflow make --tenant millesime.domaine_new
jinflow explore --tenant millesime.domaine_new
jinflow afs update --tenant millesime.domaine_new
jinflow us --tenant millesime.domaine_new # set as default
Terminal window
jinflow us --tenant millesime.domaine_new

After this, commands without --tenant will use the default.

Terminal window
jinflow us

Shows live_root, pack_root, default tenant, and where each setting was resolved from (env var, config.yml, or default).

Terminal window
# Build the KLS
jinflow make
# Explore in browser
jinflow explore
# Edit instruments (signals, theses, etc.) in afs/, rebuild
jinflow make
# Freeze a snapshot when happy
jinflow make --snapshot
# If using a DLZ: copy fresh CSVs before building
jinflow make --sync
# If using a domain pack: pull latest pack changes
jinflow afs update --do-it
Setting1st2nd3rdDefault
live_rootJINFLOW_LIVE env~/.jinflow/config.yml~/.jinflow/live/
pack_rootJINFLOW_PACKS_ROOT env~/.jinflow/config.ymlengine packs/ dir
dlz_rootJINFLOW_DLZ_ROOT env~/.jinflow/config.ymlAFS jinflow.yml
tenantJINFLOW_TENANT env~/.jinflow/config.ymlAFS default_tenants
jazzisnow jinflow is a jazzisnow product
v0.45.1 · built 2026-04-17 08:14 UTC