ARCtrl the easy way to read, manipulate and write ARCs in .NET, JavaScript and Python! ❤️
Version | Downloads |
---|---|
#r "nuget: ARCtrl"
<PackageReference Include="ARCtrl" Version="1.1.0" />
npm i @nfdi4plants/arctrl
pip install arctrl
Documentation can be found here
- 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
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 uv and dependencies
.\.venv\Scripts\python.exe -m pip install -U pip setuptools
.\.venv\Scripts\python.exe -m pip install uv
.\.venv\Scripts\python.exe -m uv pip install -r pyproject.toml --group dev
Verify correct setup with ./build.cmd runtests
✨
Feel free to reference ARCtrl
on slides or elsewhere using our logos:
Square | Horizontal | Vertical |
---|---|---|
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 | 2 ± 0 | 9 ± 7 | 133 ± 7 |
Table_AddRows | Add 10000 rows to a table with 4 columns. | 40 ± 9 | 20 ± 8 | 309 ± 26 |
Table_fillMissingCells | For a table 6 columns and 20000 rows, where each row has one missing value, fill those values with default values. | 55 ± 31 | 101 ± 11 | 3375 ± 221 |
Table_ToJson | Serialize a table with 5 columns and 10000 rows to json. | 1027 ± 200 | 293 ± 56 | 17990 ± 1482 |
Table_ToCompressedJson | Serialize a table with 5 columns and 10000 rows to compressed json. | 216 ± 19 | 4552 ± 326 | 6188 ± 839 |
Assay_toJson | Parse an assay with one table with 10000 rows and 6 columns to json | 856 ± 42 | 271 ± 55 | 19278 ± 1289 |
Study_FromWorkbook | Parse a workbook with one study with 10000 rows and 6 columns to an ArcStudy | 84 ± 29 | 96 ± 12 | 1787 ± 1410 |
Investigation_ToWorkbook_ManyStudies | Parse an investigation with 1500 studies to a workbook | 387 ± 71 | 442 ± 61 | 6305 ± 660 |