| .cargo | ||
| .devcontainer | ||
| .forgejo/workflows | ||
| .github/workflows | ||
| .vscode | ||
| src | ||
| .dockerignore | ||
| .gitignore | ||
| .rustfmt.toml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CONTRIBUTING.md | ||
| docker-compose.dev.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| flake.lock | ||
| flake.nix | ||
| justfile | ||
| LICENSE-Apache | ||
| LICENSE-MIT | ||
| README.md | ||
A REST API for ARK Invest holdings data, written in rust using axum, Redoc/Swagger through Aide, and parquet using polars
The REST API is hosted at api.NexVeridian.com
The code for the data generator is github.com/NexVeridian/ark-invest-api-rust-data
Not affiliated with Ark Invest
Install
Copy docker-compose.yml
Create data folder next to docker-compose.yml, data\parquet\*.parquet with the ticker in all caps ARKK.parquet, get the data from api.NexVeridian.com or ark-invest-api-rust-data
├───data
│ └───parquet
│ └───*.parquet
├───docker-compose.yml
docker compose up --pull always
If not using nginx, set environment NGINX = false in docker compose
Dev Install
Dev Containers
Install docker, vscode and the Dev Containers Extension
git clone
Ctrl+Shift+P Dev Containers: Open Folder in Container
Place data in data\parquet\*.parquet with the ticker in all caps ARKK.parquet, get the data from api.NexVeridian.com or ark-invest-api-rust-data
cargo run
Docker Compose
git clone
Place data in data\parquet\*.parquet with the ticker in all caps ARKK.parquet, get the data from api.NexVeridian.com or ark-invest-api-rust-data
docker compose build && docker compose up
Remove the cargo cache for buildkit with docker builder prune --filter type=exec.cachemount
License
All code in this repository is dual-licensed under either License-MIT or LICENSE-APACHE at your option. This means you can select the license you prefer.