A Forecasting Application Predicting Account Balance by Date for Best Money Market Funds Deposit Amount
- Balance Forecasting: Visualize your account balance for future dates
- Future Date Based Transactions: Add income and expenses with specific dates
- Starting Balance: Click to set and adjust your initial account balance
- Lowest Balance Tracking: Monitor the lowest balance and its date
- Recurring Transactions: Reuse repeating transactions
- Persistent Storage: Simple file based json data storage
- Edit on Click: Click on recurring transaction items to edit
- Clear Calculations: Remove all transactions while keeping recurring items
- Global Currency and Date Format: Set your preferred currency and date format
- Internationalization (i18n): Support for multiple languages including English, Español, 日本語, and 繁體中文
Looking for contributors to help translate to more languages!
Demo Website: https://mmmf-demo.jasony.org
- Access the web interface at
http://<host_ip>:5173
- Bind mounts to preserve data:
/app/data/
services:
mmmf:
image: jasonyangee/mmmf:latest
container_name: mmmf
restart: unless-stopped
ports:
- "5173:5173"
volumes:
- ./mmmf/data:/app/data
environment:
TZ: America/Los_Angeles
DEFAULT_LANGUAGE: en # supported lanugage values: en, zht, ja, es-
jasonyangee/mmmf:latest -
ghcr.io/jasonyang-ee/mmmf:latest
- Linux AMD64
- Linux ARM64
- Linux ARMv7
Fill in the Cloudflare Workers setup page as follows:
-
Fork this repository to your GitHub account.
-
Create a
MMMF_KVKV namespace (under Storage & Databases -> KV), and copy the namespace ID. -
Update the
kv_namespacesID inwrangler.jsoncwith your own namespace ID, then commit and push the change to your forked repository. -
Configure the GitHub integration for cloudflare application to connect your forked repository.
-
Create a project in Cloudflare Workers.
- Select Continue with GitHub as the deployment method.
- Select your forked repository.
- Make a project name.
- Build command:
npm run build - Deploy command:
npx wrangler deploy
-
Fork this repository to your GitHub account.
-
Create a KV namespace (under Storage & Databases -> KV), and copy the namespace ID.
-
Update the
kv_namespacesID inwrangler.jsoncwith your own namespace ID, then commit and push the change to your forked repository. -
Configure the GitHub integration for cloudflare application to connect your forked repository.
-
Create a project in Cloudflare Workers.
-
Force Pages deployment by clicking the footnote:
Looking to deploy Pages? Get started- Select Import an existing Git repository as the deployment method.
- Select your forked repository.
- Make a project name.
- Select Framework preset: React (Vite)
- Build command:
npm run build - Build output directory:
dist
-
Force update KV binding in Settings -> Bindings -> Add -> KV Namespace.
- Variable name:
MMMF_KV - Namespace: Select the namespace created in step 2.
- Variable name:
-
(Optional) Enable Demo Mode for public demos:
- Go to Settings -> Environment Variables
- Add variable:
DEMOwith valuetrue - This enables session-based data isolation where each user gets their own data
- Session data automatically expires after 5 days
-
Deploy the project again.
-
Linux
./start.sh
-
Windows
start.bat -
Docker Compose
docker-compose up -d --build
Populated View
Empty View


