GithubHelp home page GithubHelp logo

jrhawley / quill Goto Github PK

View Code? Open in Web Editor NEW
2.0 3.0 0.0 1.09 MB

Query bills and accounts to check on your financial statements.

Home Page: https://jrhawley.ca/2020/09/19/financial-statements-quill

Rust 100.00%
statements financial-data finances cli tui financial-statements bills

quill's Introduction

Quill

Query all your bills and accounts to check on your financial statements. Check for statements that you've downloaded from your bank, service provider, or other company that issues regular statements.

TUI demo

Installation

On Windows, Linux, or macOS, install with Cargo.

cargo install --git https://github.com/jrhawley/quill.git

Usage

> quill -h
Query all your bills and accounts to check on your financial statements.

USAGE:
    quill [OPTIONS]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -c, --config <CONF>    The statement configuration file

How it works

See this blog post for details about the motivation and design implementation of Quill.

Features

Customized configuration

A configuration file will automatically be loaded from your user's application settings, if one exists. Quill uses the dirs crate to achieve this, which follows the expected conventions in each operating system.

Operating system Configuration location
macOS $HOME/Library/Application Support/quill/config.toml
Linux $HOME/.config/quill/config.toml
Windows C:\\Users\\<User>\\AppData\\Roaming\\quill\\config.toml

An example configuration file can be found in examples/.

Ignore statements

In the directory for an account whose statements you're checking, you can include a .quillignore.toml file with an array of dates and/or file names. Example ignore files can be found in examples/.

Development

Compilation

Quill is designed to work on Windows, macOS, and Linux operating systems. To compile binaries for each of these systems, we make use of cargo-make.

To build a release version, run:

# for the OS you're working on
cargo make build-release

# for a specific OS
cargo make build-release-windows
cargo make build-release-macos
cargo make build-release-linux

# for all OS's
cargo make build-release-all

To create a tag and a release on GitHub, we make use of the GitHub CLI.

# for the OS you're working on
cargo make release

# for a specific OS
cargo make release-windows
cargo make release-macos
cargo make release-linux

# for all OS's
cargo make release-all

Testing

We generally follow the testing ideas in The Rust Programming Language Book. To run tests quickly and concisely, we make use of cargo-nextest.

# run all tests
cargo nextest run

quill's People

Contributors

dependabot[bot] avatar jrhawley avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.