Skip to content

laminlabs/laminr

Repository files navigation

{laminr}: An R client for LaminDB

CRAN status Lifecycle: experimental R-CMD-check

{laminr} is an R client for LaminDB. If you are new to LaminDB, please read this introduction.

  • Connect to a LaminDB instance: db <- connect()
  • Track scripts and notebooks as transforms: db$track()
  • Get records by UID: artifact <- db$Artifact$get()
  • Cache artifacts locally: artifact$cache()
  • Load artifacts into memory for a broad range of storage formats: artifact$load()
  • Create artifacts from data frames, paths, and AnnData objects: db$Artifact$from_path()
  • Delete records: artifact$delete()

See the development roadmap for more details (vignette("development", package = "laminr")).

Installation

Get started with {laminr} by installing the package from CRAN:

install.packages("laminr")

Additional packages

Some functionality requires additional packages. To install all of these use:

install.packages("laminr", dependencies = TRUE)

This will also install these package for the following tasks:

  • {anndata} - Native AnnData support in R
  • {nanoparquet} - Reading .parquet files
  • {readr} - Reading CSV/TSV files
  • {reticulate} - Functionality that requires the Python lamindb package
  • {rsvg} - Reading SVG files
  • {s3} - Fetching datasets from AWS S3

If you choose not to install all packages now you will be prompted to do so whenever one is required.

Setting up

Before loading {laminr} for the first time you should:

  1. Set up a Python environment
laminr::install_lamindb()
  1. Log in
laminr::lamin_login(api_key = "your_api_key")
  1. Set a default instance
laminr::lamin_connect("<owner>/<name>")

See the setup vignette for more information (vignette("setup", package = "laminr")).

Getting started

The best way to get started with {laminr} is to explore the package vignettes (available at laminr.lamin.ai):

  • Get started: Learn the basics and explore practical examples (vignette("laminr", package = "laminr")).
  • Package Architecture: Get a better understanding of how {laminr} works (vignette("architecture", package = "laminr")).

For information on specific modules and functionalities, check out the following vignettes:

  • Core Module: Learn about the core registries available in a LaminDB instance (vignette("module_core", package = "laminr")).
  • Bionty Module: Explore the bionty module for biology-related entities (vignette("module_bionty", package = "laminr")).