Skip to content

JetSquirrel/cloudbridge

Repository files navigation

CloudBridge

CloudBridge Logo

License: MIT Rust CI Release Platform

A cross-platform desktop application for multi-cloud cost management and visualization.

FeaturesScreenshotInstallationConfigurationUsageRoadmap


📸 Screenshot

CloudBridge Screenshot

✨ Features

  • 🌐 Multi-Cloud Support

    • Amazon Web Services (AWS) - Full support
    • Alibaba Cloud (阿里云) - Full support
    • 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)
  • 🔒 Security First

    • AES-256-GCM encryption for stored credentials
    • Credentials never leave your local machine
    • No cloud sync, no telemetry
  • ⚡ Smart Caching

    • Intelligent 6-hour cache mechanism
    • Minimize API calls and costs
    • Force refresh when needed
  • 🎨 Modern UI

    • Built with GPUI - Zed's GPU-accelerated UI framework
    • Native performance
    • Dark theme by default

📦 Installation

Download Pre-built Binaries

Download the latest release for your platform from the Releases page:

Platform Download
Windows (x64) cloudbridge-windows-x64.exe
macOS (Intel) cloudbridge-macos-x64
macOS (Apple Silicon) cloudbridge-macos-arm64

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: You may need to right-click → "Open" the first time, or run xattr -cr cloudbridge-macos-* to remove quarantine flags.

Prerequisites (for building from source)

  • Rust 1.75 or later
  • Windows SDK (Windows only, for shader compilation)
    • The fxc.exe shader compiler must be in PATH
    • Usually located at: C:\Program Files (x86)\Windows Kits\10\bin\10.0.xxxxx.0\x64\

Build from Source

# Clone the repository
git clone https://github.com/JetSquirrel/cloudbridge.git
cd cloudbridge

# Build release version
cargo build --release

# Run the application
cargo run --release

The compiled binary will be at:

  • Windows: target/release/cloudbridge.exe
  • macOS/Linux: target/release/cloudbridge

⚙️ Configuration

AWS Configuration

  1. Create an IAM user with Cost Explorer access
  2. Attach the following IAM policy:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ce:GetCostAndUsage",
                "ce:GetCostForecast",
                "ce:GetDimensionValues",
                "ce:GetTags"
            ],
            "Resource": "*"
        }
    ]
}
  1. Generate Access Key ID and Secret Access Key
  2. Add the account in CloudBridge

Note: AWS Cost Explorer API costs $0.01 per request. CloudBridge minimizes API calls through intelligent caching.

Alibaba Cloud Configuration

  1. Log in to Alibaba Cloud Console
  2. Create a RAM user for API access
  3. Attach the AliyunBSSReadOnlyAccess policy
  4. Create an AccessKey for the RAM user
  5. Add the account in CloudBridge

Note: Alibaba Cloud billing API is free of charge.

🚀 Usage

Adding a Cloud Account

  1. Launch CloudBridge
  2. Navigate to Accounts in the sidebar
  3. Select your cloud provider (AWS or Alibaba Cloud)
  4. Enter account name and credentials
  5. Click Validate & Add

Viewing Cost Data

  1. Go to Dashboard
  2. View the overview cards showing:
    • Current month total cost
    • Last month total cost
    • Month-over-month change
    • Active accounts count
  3. Click on any account card to expand service-level details
  4. Click Trend to view the 30-day cost chart

Refreshing Data

  • Automatic: Data is cached for 6 hours and auto-refreshes when stale
  • Manual: Click Refresh button to force refresh all data

🗺️ Roadmap

v0.2.0 (Planned)

  • Azure support
  • Google Cloud Platform support
  • Cost alerts and notifications
  • Budget tracking

v0.3.0 (Planned)

  • Export reports (CSV, PDF)
  • Cost forecasting
  • Tag-based cost allocation
  • Multi-currency support

Future

  • Linux native builds
  • Cost optimization recommendations
  • Team collaboration features
  • API for integrations

📁 Data Storage

CloudBridge stores all data locally:

Platform Location
Windows %APPDATA%\com.cloudbridge\CloudBridge\
macOS ~/Library/Application Support/com.cloudbridge.CloudBridge/
Linux ~/.local/share/cloudbridge/

Files:

  • cloudbridge.duckdb - Local database (credentials encrypted)
  • config.json - Application configuration (contains encryption key)

⚠️ Important: Never share your config.json together with the database file, as this would expose your encrypted credentials.

🔐 Security

  • 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

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • GPUI - The GPU-accelerated UI framework from Zed
  • GPUI Component - UI component library
  • DuckDB - Embedded analytical database

⬆ Back to Top

Made with Github Copilot

About

A cross-platform desktop application for multi-cloud cost management and visualization.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •