what is lifelab data scientist edition
Querying notebook data with Lua
flowchart LR
subgraph Storage["Notes and their properties"]
Journals["Journal notes"]
Metrics["Note properties<br/>weight, mood, other measurements"]
end
subgraph Lua["Lua code block"]
Query["nb.query / nb.query_all"]
Analyze["Filter and aggregate"]
end
subgraph Output["Portable notebook output"]
Chart["nb.chart and ui.render"]
Table["ui.table"]
Stats["ui.stat"]
end
Journals --> Query
Metrics --> Query
Query --> Analyze
Analyze --> Chart
Analyze --> Table
Analyze --> StatsWhat is LifeLab - Data scientist edition
LifeLab is a fusion of Jupyter notebook and Obsidian on top of Postgres. It is a self-hosted computational environment that reimagines the personal journal as a queryable data lake.
*You are the data
Your journal is also your analysis dataset, becase both code and prose lie in the same database. You can write Lua blocks that query the notebook itself. The API allows you to fetch, filter, and transform other notes programmatically. Furthermore, you can store structured properties on ordinary note blocks, declare fields with a tag schema, and aggregate them.
The platform was built to answer a specific question: What if my journal could read itself? Because the execution environment has direct access to the storage layer, you can build self-updating dashboards. For instance, I built a sentiment analysis pipeline that iterates through years of unstructured journal entries, computes rolling averages, and renders the results with portable charts and tables in the notebook.
It no longer becomes a two step job to start a jupyter notebook, load your data sources and perform analysis. Everything is in one spot.