Skip to main content

Linked Document Analysis - A provenance-driven project management system

Project description

LDAnalysis (LDA)

A provenance-driven project management system that creates a living map of your research, tracking relationships, monitoring changes, and preserving your project's complete history.

Each analysis folder, manifest, and result is named and organized to mirror the document outline, creating a one-to-one link between text, code, data, and results.

This architecture ensures that every figure, table, or claim in the document is transparently and immutably traceable back to its generating code and data—enabling instant audit, replication, and regulatory review.

Installation

Quick Install (Recommended)

Install using UV for a fast, isolated global installation:

# Install UV (one-time setup)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install LDAnalysis
uv tool install ldanalysis

Alternative Method

Using pipx:

pipx install ldanalysis

Development Installation

For contributors or to use the development version:

# Clone the repository
git clone https://github.com/cincineuro/ldanalysis.git

# Install with UV in development mode
uv tool install --upgrade -e /path/to/ldanalysis

For detailed installation instructions, see the Installation Guide.

Requirements: Python 3.8 or later

Quick Start

First-Time Setup

When you first run LDA, you'll be prompted to create a profile:

lda init
No user profile found. A profile can store default values for your projects.
Would you like to set up a profile now? [Y/n]: Y

Your name (for provenance tracking): Dr Jane Smith
Organization (optional): Research Institute
Email (optional): jane.smith@institute.edu
Default language [python/r/both] (default: python): python

Profile saved to: ~/.config/lda/profile.yaml

Create a Project

LDA uses an interactive naming system to build structured project names:

lda init
Would you like to use the structured naming system? [Y/n]: Y

Let's build your project name
-----------------------------
1. Project/Study/Protocol (e.g., ALS301, COVID19, SensorX) [required]: ALS301
2. Site/Organization/Consortium (e.g., US, LabA, UCL) [optional]: CCHMC
3. Cohort/Arm/Group (e.g., Placebo, Elderly, Control) [optional]: Treatment
4. Phase/Session/Timepoint/Batch (e.g., 6mo, 2024A, Pre) [optional]: Week8
5. Modality/DataType/Task/Platform (e.g., MRI, RNAseq, Stroop) [optional]: EEG

Preview: ALS301_CCHMC_Treatment_Week8_EEG

Is this correct? [Y/n]: Y

✨ Project created: ALS301_CCHMC_Treatment_Week8_EEG/

The tool will:

  1. Create a project with structured naming
  2. Set up section folders for your analysis
  3. Generate file manifests for tracking
  4. Initialize provenance with unique IDs
  5. Create a playground for experimentation

Project Structure

Each LDA project contains:

  • Section folders: One-to-one mapping with document sections
  • File manifests: Explicit lists of expected inputs and outputs
  • Provenance tracking: Hashes, timestamps, and analyst attribution
  • Audit logs: Complete history of all changes

Documentation

See CLAUDE.md for detailed architecture and usage instructions.

License

MIT License - see LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ldanalysis-0.2.0.6.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ldanalysis-0.2.0.6-py3-none-any.whl (58.0 kB view details)

Uploaded Python 3

File details

Details for the file ldanalysis-0.2.0.6.tar.gz.

File metadata

  • Download URL: ldanalysis-0.2.0.6.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.2

File hashes

Hashes for ldanalysis-0.2.0.6.tar.gz
Algorithm Hash digest
SHA256 206f22617c06ca7385186d5b7d017ec5db94829d81f23f7928e8e103355208d3
MD5 3295068bb4e01a988421f7efa81f80bf
BLAKE2b-256 41c63dcab5cf65cfb0073a60327caa5d44addfbf38bb085f9eff79a75bad2c9c

See more details on using hashes here.

File details

Details for the file ldanalysis-0.2.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for ldanalysis-0.2.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 514f66be37571e1c73a3e4c52574ca0feb9b3b1d0d15091637da81c6f5fef40a
MD5 6d5e1f9fa773c1460963abeb78f70e27
BLAKE2b-256 7dcb27d6ea0446d0267aa45748c96db7ece786b6c78b54786ba02a56cc93bf11

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page