140 releases (12 breaking)
| new 0.13.9 | Jan 27, 2026 |
|---|---|
| 0.13.3 | Dec 23, 2025 |
| 0.12.12 | Nov 27, 2025 |
| 0.6.12 | Jul 30, 2025 |
| 0.2.30 | Jul 23, 2024 |
#896 in Magic Beans
655KB
17K
SLoC
Cala
Cala is a robust ledger system developed by Galoy, designed to handle complex financial transactions and accounting operations. It provides a flexible and scalable solution for managing financial records with strong consistency guarantees.
Features
Core Capabilities
- Double-Entry Accounting: Built-in support for double-entry bookkeeping principles ensuring accurate financial records
- SQL-Compatible: Engineered to work with SQL databases (PostgreSQL) for robust data persistence and querying
- Strong Consistency: Ensures accuracy and reliability of financial records
- Real-time Processing: Efficient transaction processing suitable for production financial systems
API & Integration
- GraphQL API: Modern API interface with built-in playground for easy integration and testing
- Extensible Architecture: Modular design with support for custom extensions via the Node.js bindings
- Transaction Templates: Customizable transaction templates for common financial operations
- Multi-Currency Support: Handle transactions across different currencies
Developing
Dependencies
Nix package manager
- Recommended install method using https://github.com/DeterminateSystems/nix-installer
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
direnv >= 2.30.0
- Recommended install method from https://direnv.net/docs/installation.html:
curl -sfL https://direnv.net/install.sh | bash echo "eval \"\$(direnv hook bash)\"" >> ~/.bashrc source ~/.bashrc
Docker
- Choose the install method for your system https://docs.docker.com/desktop/
Testing
Run unit tests with:
make reset-deps next-watch
Run end-to-end tests with:
make e2e
Running the Server
To run the server:
make run-server
Dependencies
~69–98MB
~1.5M SLoC