A cross-platform desktop application for multi-cloud cost management and visualization.
Features • Screenshot • Installation • Configuration • Usage • Roadmap
-
🌐 Multi-Cloud Support
- Amazon Web Services (AWS) - Full support
- Alibaba Cloud (阿里云) - Full support
- DeepSeek - Full support (balance tracking)
- Azure & GCP - Coming soon
-
📊 Cost Visualization
- Monthly cost overview with month-over-month comparison
- Per-service cost breakdown
- Cost trend charts
- Daily cost statistics (total, average, max, min)
-
💱 One Currency
- Charges are stored in the currency they were billed in and converted for display, each at a rate dated no later than the charge itself
- Pick your reporting currency in Settings; nothing is rewritten
- A charge no rate covers is reported, never counted at par
-
🧾 A Real Ledger
- Every source normalizes into one fact table named after FOCUS columns, so credits, refunds, taxes and fees are each labelled as themselves
- Raw provider responses are kept as Parquet, so a mapping fix replays what is on disk instead of paying for another fetch
- Re-ingesting an unchanged bill produces identical rows
-
🔒 Security First
- Credentials live in your OS keyring, never in the database
- Credentials never leave your local machine
- No cloud sync, no telemetry
-
⚡ Frugal with Paid APIs
- A period is re-fetched at most once every 6 hours
- Cost Explorer is asked for everything in one request per period
- Force refresh when you need it now
-
🎨 Modern UI
- Built with GPUI - Zed's GPU-accelerated UI framework
- Native performance
- Light and dark themes
Download the latest release for your platform from the Releases page:
| Platform | Download |
|---|---|
| Windows (x64) | cloudbridge-windows-x64.exe |
| macOS (Apple Silicon) | cloudbridge-macos-arm64.dmg |
Intel Macs and Linux are not published as binaries; both build from source.
Note for Windows users: Windows SmartScreen may show a warning for unsigned executables. Click "More info" → "Run anyway" to proceed. The application is safe and open source.
Note for macOS users: Open the
.dmgand drag CloudBridge to Applications. The app is ad-hoc signed but not notarized, so the first launch needs a right-click → Open (once). If macOS still refuses, runxattr -cr /Applications/CloudBridge.app. Upgrading from the 0.1.x bare binary, macOS asks once more for permission to read the credentials CloudBridge stored in your keychain — it is a different application path, so choose Always Allow.
- Rust 1.75 or later
- Windows SDK (Windows only, for shader compilation)
- The
fxc.exeshader compiler must be in PATH - Usually located at:
C:\Program Files (x86)\Windows Kits\10\bin\10.0.xxxxx.0\x64\
- The
# Clone the repository
git clone https://github.com/JetSquirrel/cloudbridge.git
cd cloudbridge
# Build release version
cargo build --release
# Run the application
cargo run --releaseThe compiled binary will be at:
- Windows:
target/release/cloudbridge.exe - macOS/Linux:
target/release/cloudbridge
- Create an IAM user with Cost Explorer access
- Attach the following IAM policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ce:GetCostAndUsage",
"ce:GetCostForecast",
"ce:GetDimensionValues",
"ce:GetTags"
],
"Resource": "*"
}
]
}- Generate Access Key ID and Secret Access Key
- Add the account in CloudBridge
Note: AWS Cost Explorer API costs $0.01 per request. CloudBridge minimizes API calls through intelligent caching.
- Log in to Alibaba Cloud Console
- Create a RAM user for API access
- Attach the
AliyunBSSReadOnlyAccesspolicy - Create an AccessKey for the RAM user
- Add the account in CloudBridge
Note: Alibaba Cloud billing API is free of charge.
- Log in to DeepSeek Platform
- Navigate to API Keys section
- Create a new API key
- Add the account in CloudBridge using the API key
Note: DeepSeek displays your account balance (including granted and topped-up balances) instead of cost data. The balance query API is free of charge.
- Launch CloudBridge
- Navigate to Accounts in the sidebar
- Select your cloud provider (AWS, Alibaba Cloud, or DeepSeek)
- Enter account name and credentials
- Click Validate & Add
- Go to Dashboard
- View the overview cards showing:
- Current month total cost (or balance for DeepSeek accounts)
- Last month total cost
- Month-over-month change
- Active accounts count
- Click on any account card to expand service-level details (or balance breakdown for DeepSeek)
- The expanded card charts the daily cost trend, read from the ledger (DeepSeek reports a balance, so it has no trend)
Go to Settings → Reporting and pick the currency totals are shown in. Charges keep the currency they were billed in; only the view they are read through changes, so switching back and forth costs nothing.
- Automatic: A billing period is re-fetched at most once every 6 hours
- Manual: Refresh picks up anything stale; Force Refresh re-fetches regardless, at the cost of another paid API call
CloudBridge is becoming a personal finance platform for everything an individual developer spends on infrastructure and AI — public cloud, model provider APIs, token plans and subscriptions — in one ledger, one currency, on one machine. See docs/roadmap.md for the detailed plan and its rationale.
- Source registry replacing the hardcoded provider enum
-
fct_chargefact table, batch-tracked transactional ingest - Split fetch from normalize, raw Parquet layer
- AWS / Alibaba Cloud / DeepSeek mapped to FOCUS columns
- Cross-currency totals via a rate table and reporting currency
- Bill file export channel (S3 / OSS + Parquet)
- Tag-based allocation with an explicit "unallocated" node
- Sankey cost flow
- Three-tier anomaly detection with attribution
- Budget alerts
- Month-end snapshot freezing
- Linux native builds
- Pluggable source adapters
- Local coding-agent token usage (reserved extension point)
Explicitly out of scope: multi-user or shared deployments, invoice reconciliation, a general chargeback rule engine, team collaboration.
CloudBridge stores all data locally:
| Platform | Location |
|---|---|
| Windows | %APPDATA%\CloudBridge\data\ |
| macOS | ~/Library/Application Support/CloudBridge/ |
| Linux | ~/.local/share/CloudBridge/ |
Files:
billing.duckdb- The ledger: every charge, in the currency it was billed incloudbridge.duckdb- Accounts and settingsraw/- Provider responses as fetched, partitioned by source, account and billing periodconfig.json- Application configuration
Credentials are not in any of them: they are stored in the OS keyring (Windows Credential Manager, macOS Keychain, Linux Secret Service).
⚠️ Important: Never share yourconfig.jsontogether with the database file, as this would expose your encrypted credentials.
- Credentials are encrypted using AES-256-GCM before storage
- Encryption key is generated locally and stored in
config.json - No data is transmitted except direct API calls to cloud providers
- The executable contains no embedded credentials
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- GPUI - The GPU-accelerated UI framework from Zed
- GPUI Component - UI component library
- DuckDB - Embedded analytical database
