Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alensiljak/pricedb-rust

Fetching commodity prices and exporting in Ledger format
https://github.com/alensiljak/pricedb-rust

finance ledger-cli quote rust

Last synced: about 2 months ago
JSON representation

Fetching commodity prices and exporting in Ledger format

Awesome Lists containing this project

README

        

# pricedb-rust
Retrieving, storing, and exporting commodity prices in Ledger format

# Introduction

This utility downloads and stores commodity prices used by Ledger-cli.

It stores the prices in an Sqlite database.

This is a continuation of the Price Database project. The [previous version](https://gitlab.com/alensiljak/price-database) was implemented in Python. It has been migrated to Rust.

# Usage

## Configuration

Before usage, you need to add the paths to the configuration file. Run `pricedb config show` to see the location of the file.

It is located in the user's config directory, i.e. `~/.config/pricedb/pricedb.toml` or `C:\Users\\AppData\Roaming\pricedb\config\pricedb.toml`.

Populate the `price_database_path` with the full path to the db file, i.e. /my_files/prices.db.
`export_destination` is the path to the file into which the prices will be exported.

## Data Store

A template database file is available at the [data directory](https://gitlab.com/alensiljak/price-database/-/tree/master/data) in the Python repository. This can be used temporarily, until the database initialization scripts are consolidated.

This manual method currently used to bootstrap the database file. The functionality to automatically generate the database file will be implemented as a command. It is currently only used in tests.

## Commands

The application is a Command-Line Interface (CLI) and displays the available options when run.
The most-common commands:

```shell
pricedb dl
pricedb prune
pricedb export
```

# Change Log

See [here](CHANGELOG.md).

# Development