mmex_lib 0.1.2-beta.1

Library for interacting with Money Manager EX data and logic
Documentation

MMEX Lib

Rust library for interacting with Money Manager EX (MMEX) data and logic, with UniFFI support for multi-language bindings.

⚠️ PROJECT STATUS: BETA This library is in beta phase. API changes may occur. Use with caution.


🌐 Documentación en Español (Spanish)

Toda la documentación detallada y guías en español están disponibles en: 👉 docs-es/README.md


🌍 Language Support

Language Package Manager Status
Python (3.8+) PyPI ✅ Available (pip install mmex-lib)
Rust crates.io ✅ Available (cargo add mmex-lib)
Kotlin/JVM Maven Central ⏳ Coming soon...

🚀 Quick Start (Python)

The easiest way to use mmex_lib is through Python.

Installation

Install the library directly from PyPI:

pip install mmex-lib

Usage

import mmex_lib

# Initialize the engine (path to .mmb file, password if encrypted)
engine = mmex_lib.MmexEngine("my_finance.mmb", None)

# Access account manager and get all accounts
accounts = engine.accounts().get_all_accounts()

print(f"Found {len(accounts)} accounts:")
for account in accounts:
    print(f"- {account.name} (Initial Balance: {account.initial_balance})")

For more details, see the Python Getting Started Guide.


📊 Feature Matrix (Beta)

Module Status Description
Accounts ⚠️ Beta Account CRUD and balance calculations.
Transactions ⚠️ Beta Income, expenses, and transfers management.
Categories ⚠️ Beta Hierarchical category management.
Currencies ⚠️ Beta Currency and exchange rate management.
Assets 🧪 Alpha Fixed assets tracking.
Stocks 🧪 Alpha Stock portfolio management.

🏗 Development & Contributing

If you want to build the library from source or contribute to its development, please refer to the documentation:

Building from source (Python)

make setup      # Complete setup (venv + deps + lib compilation)
make develop    # Recompile after Rust changes
make test       # Run all tests (Rust + Python)

📄 License

Check the LICENSE file for details.