Moolah 0.1.9

Personal Finance and Investment automation with PowerShell

This module contains a collection of PowerShell cmdlets that help automate some of the finanical and investment processes that are performed on your personal computer and protect the financial data as securely and portable as possible. All of the hard work is performed in the PowerShell cmdlets, so all you have to do is follow instructions on the initial configuration and setup to get the benefits of the PowerShell cmdlets.


If you are new to PowerShell, then review the prior documentation.

The remainder of this document assumes you have basic PowerShell knowledge, so the basics won't be covered. Previously this project was being hosted on GitHub.

The new version of Moolah supports both PowerShell 5.x and 7.x on a Windows computer and is being hosted from KeyBase using the git feature. Send me a KeyBase Chat requesting an invite to the PSModule team for access to the Moolah git repository.

For non-developers, Moolah can be installed from Microsoft's PSGallery by executing the PowerShell command.

Install-Module Moolah -Repository PSGallery -scope currentuser

The primary function of this module is to maintain your financial data in cold storage using software installed on your computer. All financial data is encrypted and stored on removable USB or MicroSD drives. Provided your crypto wallet's private keys have not been compromized, it will be impossible for someone to get to your data when the drive media is offline.

Leaving your drive media online while it is not being actively used is equivalent to never locking your safe door. The Moolah module helps you keep your safe door locked.

Exodus Crypto Wallet is supported with this module and provides the additional functionality of having multiple wallets with a single installation of the Exodus wallet software. In 2017, very few crypto wallets supported cold storage options, so I created my own solution. Today Exodus does have support for the Trezor hardware wallet. My preference is to have as much control, flexibility, and responsibility for the storage of my financial data as possible, but this comes with the downside of only having myself to blame for any lost or stolen data. Do your own research and go with the solution that best supports your desires. Proceed, only if you are willing to take on the responsibility of maintaining your own data and the software as well.

GnuCash accounting software is supported for tracking fiat currency data with same features supported for the Exodus Crypto Wallet.

VeraCrypt is the free open source disk encryption software used for encrypting data on your removable disks.

PasswordSafe is the free open source software used for maintaining your secrets such as passwords and etc.

All of the above software components need to be installed on your computer and used individually until you gain proficiency with each component before proceeding onto using these components with the Moolah module. Proceeding without having this proficiency in place puts you at risk of losing or having data stolen.

I recommend installing all software in a non-standard Windows folder and if available install the portable version of the software. For extra security set the permission of the installation folder to only be accessed by your individual account.


Moolah in Action with Exodus

Sometimes a demonstration of a software solution is worth a 1000 words. Obtaining some degree of competency with these software products takes your valuable time, so click on the anitmated GIF link above to see the Moolah module in action. This should help you determine if investing more of your time in setting up the Moolah module is worthwhile.

Moolah in Action with GnuCash

Moolah in Action with CoinMarketcap

If after viewing Moolah in Action, you determine this something you would like to implement on your computer then continue reading.


Software Installation

Currently, the Moolah module is only working Windows 10. In theory, this module should work on linux and MacOS too, but the module needs to be updated to use the Unix style of directory and file references. Maybe with the next version, I'll get this module working on the Linux and MacOS OS.

Step 1: Installing Exodus (download)

Step 2: Installing VeraCrypt (download)

Step 3: Installing PasswordSafe (download)

Step 4: Installing GnuCash (download)

Step 5: Installing Moolah (download)

Install-Module Moolah -Repository PSGallery -scope currentuser

It is also a requirement to have text editor software at your computer as well. I recommend Visual Studio Code but this is not a hard requirement. I've grown to like Windows Terminal for 99% of my PowerShell sessions.


Hardware Requirements

At a minimum, you will need a pair of USB or MicroSD drives to serve the function of your offline media. I recommend no smaller than 512GB each. I've had absolutely no issues with SanDisks for the last 3 years, so highly recommend this brand. Click on the Hardware Requirements link above.

The offline media will contain the following data which is updated automatically by the Moolah module.

  1. Moolah VeraCrypt container

    This VeraCrypt container contains the Moolah database and the Password Manager database and any other data that needs to be kept confidental.

    By default, this container is always mounted as drive letter A. The default drive letter can be changed during the setup process.

  2. Wallet VeraCrypt container

    This VeraCryt container contains wallet data directory of the Exodus wallet application.

    By default, this container is always mounted as driver letter B. The default drive letter can be changed during the setup process.

    There can be multiple wallets and each wallet will have a unique VeraCrypt container. The Exodus Crypto Wallet can only access one wallet at a time.

Additionally, you will want to copy the installer component of each of the software packages that are installed. This is your responsibility. The module will NOT do this for you.

No sense in backing up the data and not the software that is needed to expose it to you.

After all of the software is installed, configured, setup, and working as expected, you'll want to make 1 or more copies of your offline media. This is your responsiblity too. The module will NOT do this for you.

A copy of my electronic wallet travels with me at all times just like my regular wallet. You might consider doing the same.

What happens with the other copies is up to you.


Moolah cmdlets 0.1.9

cmdlet Description
Start-Wallet Starts a Crypto Wallet. Exodus by default.
Start-PwManager Starts the password manager. PasswordSafe by default.
Show-MoolahEnv View or Update your Moolah environmental variables.
Start-GnuCash Starts the GnuCash application.
Get-CryptoTicker Interfaces with CoinMarketcap to track the ROI of your crypto transactions.
Get-Password Creates unique passwords
Convert-OFX Converts OFX files downloaded from major banks to valid xml files.

Moolah Version History

Date Version Description
12/23/2020 0.1.9 Moolah documentation streamlined.
12/19/2020 0.1.8 PowerShell 7.x support and more cmdlets
12/15/2017 0.1.7 ShortCut creation bug fix
12/15/2017 0.1.6 Added Get-CryptoTicker & Document corrections
11/14/2017 0.1.5 Added Start-GnuCash cmdlet
11/12/2017 0.1.4 Start-Wallet delayed exit set to 7 seconds. Document corrections.
11/10/2017 0.1.0 Initial module release

I use the Moolah module for my own personal stuff, so I'm very motivited to get it done right. This is just my gift to others who don't have the technical expertise to do this on their own.

"Your greatness is not measured by how much you’re able to gain in life, but by how much you’re able to give" -unknown