Library for management of Annotated Research Contexts (ARCs) using an in-memory representation and runtimer agnostic contract systems.
Project description
ARCtrl
ARCtrl the easy way to read, manipulate and write ARCs in .NET, JavaScript and Python! ❤️
Version | Downloads |
---|---|
Install
.NET
#r "nuget: ARCtrl"
<PackageReference Include="ARCtrl" Version="1.1.0" />
JavaScript
npm i @nfdi4plants/arctrl
Python
pip install arctrl
Docs
Currently we provide some documentation in form of markdown files in the /docs
folder of this repository!
Development
Requirements
- nodejs and npm
- verify with
node --version
(Tested with v18.16.1) - verify with
npm --version
(Tested with v9.2.0)
- verify with
- .NET SDK
- verify with
dotnet --version
(Tested with 7.0.306)
- verify with
- Python
- verify with
py --version
(Tested with 3.12.2, known to work only for >=3.11)
- verify with
Local Setup
On windows you can use the setup.cmd
to run the following steps automatically!
-
Setup dotnet tools
dotnet tool restore
-
Install NPM dependencies
npm install
-
Setup python environment
py -m venv .venv
-
Install Poetry and dependencies
.\.venv\Scripts\python.exe -m pip install -U pip setuptools
.\.venv\Scripts\python.exe -m pip install poetry
.\.venv\Scripts\python.exe -m poetry install --no-root
Verify correct setup with ./build.cmd runtests
✨
Performance
Measured on 13th Gen Intel(R) Core(TM) i7-13800H
Name | Description | FSharp Time (ms) | JavaScript Time (ms) | Python Time (ms) |
---|---|---|---|---|
Table_GetHashCode | From a table with 1 column and 10000 rows, retrieve the Hash Code | 5 | 21 | 226 |
Table_AddRows | Add 10000 rows to a table with 4 columns. | 15 | 22 | 289 |
Table_fillMissingCells | For a table 6 columns and 20000 rows, where each row has one missing value, fill those values with default values. | 49 | 108 | 4813 |
Table_ToJson | Serialize a table with 5 columns and 10000 rows to json. | 1099 | 481 | 6833 |
Table_ToCompressedJson | Serialize a table with 5 columns and 10000 rows to compressed json. | 261 | 2266 | 717334 |
Assay_toJson | Parse an assay with one table with 10000 rows and 6 columns to json | 915 | 2459 | 28799 |
Study_FromWorkbook | Parse a workbook with one study with 10000 rows and 6 columns to an ArcStudy | 97 | 87 | 1249 |
Investigation_ToWorkbook_ManyStudies | Parse an investigation with 1500 studies to a workbook | 621 | 379 | 9974 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file arctrl-2.2.2.tar.gz
.
File metadata
- Download URL: arctrl-2.2.2.tar.gz
- Upload date:
- Size: 488.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.2 Windows/11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81c920d12c788e523d38c85ed4f1381b5672554df9c06ddbf4d2bb4edabf4cbb |
|
MD5 | 07c1b5508ea564c3658bd5acc90c38d9 |
|
BLAKE2b-256 | 456a97ce33129c3852ba5e7c5ad21add017ded24848519aae09b0a1cc6ff4711 |
File details
Details for the file arctrl-2.2.2-py3-none-any.whl
.
File metadata
- Download URL: arctrl-2.2.2-py3-none-any.whl
- Upload date:
- Size: 738.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.2 Windows/11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0e848c0f178eee5f5c25b1309e1008ad0f539d55258a56fca269d9204c037d4 |
|
MD5 | bb47cd2d60f27121cc36920623d6b238 |
|
BLAKE2b-256 | bf461404499b8ccceb9a953b3e159638d2c87e73e55e8f2d6a4fd15dd9546a7d |