Skip to content

antonagestam/little-bank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

little-bank

CI Build Status

Little Bank is a framework for analyzing financial transactions.

Design goals

  • All analysis should be a matter of summarizing credit, debit or balance of an account in a system. The intention is to reduce bugs by making all analysis use the same numerical implementation.
  • This means that we're of the opinion that implementing filters and doing arithmetic on transactions outside of little-bank code is wrong. If we find ourselves grasping to do this, what we should instead do is introduce new accounts our possibly restructure the flow between the existing ones.
  • Allow defining rules for a system in a declarative way.
  • Disallow mutation. The design encourages immutable, append-only transactions.
  • All operations that update the system are very similar: appending transactions which automatically verifies all defined rules, and persisting the new transactions. This allows centralizing code that saves transactions to a single place.

Non-goals

  • Performance. This library is intended to be used to analyze systems of a small number of transactions. Therefor exposing APIs that are easy to reason about is a much higher priority than performance.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages