6 releases

new 0.1.35 Nov 9, 2025
0.1.34 Nov 9, 2025
0.1.31 Oct 20, 2025
0.1.30 Sep 12, 2025

#26 in Science

Download history 89/week @ 2025-09-02 175/week @ 2025-09-09 17/week @ 2025-09-16 8/week @ 2025-09-23 12/week @ 2025-09-30 1/week @ 2025-10-07 109/week @ 2025-10-14 37/week @ 2025-10-21 4/week @ 2025-10-28

153 downloads per month

MIT and LGPL-3.0-or-later

12MB
9K SLoC

ACORN 🌱

gitlab unsafe forbidden crates.io Latest Release

Accessible Content Optimization for Research Needs

ACORN provides an ontology for research activity data (RAD) and enables adding linked data context and transforming RAD into a knowledge graph that is amenable to automated reasoning and artifact generation (e.g. PDFs, PPTX, etc.)

So what, big deal, who cares?

ACORN is a command line multi-tool that employs automated processes for informing and enforcing defined content schemas. With these content schemas, ACORN builds communication assets such as PDFs, presentation files, and web pages. It also lays the foundation for deep data insights about ORNL’s — and any institution’s — corpus of research. Built using the memory-safe Rust programming language, ACORN can be used on any Windows, Mac, or Linux machine

Installation

Homebrew and Scoop packages are planned. Check back soon for updates.

Install with cargo

  • Install acorn command

    cargo install acorn-cli
    
  • Test the installation

    acorn help
    

Download pre-compiled binary

  • Download newest binary from releases page
    curl -LO https://code.ornl.gov/api/v4/projects/16689/packages/generic/x86_64-unknown-linux-musl/v0.1.33/acorn
    
  • Make binary executable
    chmod +x ./acorn
    
  • Move binary to folder on path (ex. /usr/local/bin)
    mv acorn /usr/local/bin
    
  • Verify installation with acorn --version

⚠️ CAUTION acorn export is not currently supported on MacOS

Build from source

  • Clone this project and navigate to it

    git clone https://code.ornl.gov/research-enablement/acorn
    cd ./acorn
    
  • Install acorn command

    cargo install --path ./acorn-cli
    
  • Test the installation

    acorn help
    

ACORN Rust Libary

crates.io

  • Add acorn-lib as a dependency in your Cargo.toml
    [dependencies]
    acorn-lib = "0.1.30"
    
  • Use acorn-lib functions in your Rust code
    use acorn_lib::schema::validate::{is_doi, is_orcid, is_ror};
    
    assert!(is_doi("10.11578/dc.20250604.1"));
    assert!(is_orcid("https://orcid.org/0000-0002-2057-9115"));
    assert!(is_ror("01qz5mb56"));
    
  • If you want to use acorn-lib to build your own CLI app, be sure to include the following in your Cargo.toml to enable the cli feature
    [dependencies]
    acorn-lib = { version = "0.1.30", features = ["cli"] }
    

Python Bindings

PyPI

⚠️ CAUTION acorn-py API is currently experimental and may change without warning.

  • Install acorn-py package
    pip install acorn-py
    
  • Use acorn-lib functions in Python
    from acorn.schema.validate import is_doi, is_orcid, is_ror
    
    assert is_doi("10.11578/dc.20250604.1")
    assert is_orcid("https://orcid.org/0000-0002-2057-9115")
    assert is_ror("01qz5mb56")
    

Architecture

See ARCHITECTURE.md

Contributing

See CONTRIBUTING.md

Dependencies

~97–140MB
~2.5M SLoC