A minimal macOS menu bar app to track your SaaS revenue in real-time. Connect your Stripe and Polar.sh accounts to see your total revenue at a glance.
- Real-time Revenue Tracking - See your total revenue from the menu bar
- Multi-platform Support - Connect Stripe and Polar.sh (more coming soon)
- Secure Storage - API keys stored in macOS Keychain
- Detailed Stats - View order counts, average order value, and per-platform breakdown
- Auto-refresh - Configurable refresh intervals (1 min to 1 hour)
- Native macOS App - Built with SwiftUI, lightweight and fast
- Privacy First - No data leaves your machine except API calls to your connected services
Download the latest release from the Releases page.
Requirements:
- macOS 13.0+
- Xcode 15.0+
# Clone the repository
git clone https://github.com/muhammadanas0716/Revenue-Bar.git
cd Revenue-Bar
# Open in Xcode
open "MRR Bar.xcodeproj"
# Build and run (⌘R)- Go to Stripe Dashboard
- Navigate to Developers → API keys
- Copy your Secret key (starts with
sk_live_orsk_test_) - Paste in MRR Bar settings
- Go to Polar.sh
- Navigate to Settings → Developers → Access Tokens
- Click Create Token
- Select the
orders:readscope - Copy the token (starts with
polar_oat_) - Paste in MRR Bar settings
- (Optional) Add your Organization ID for multi-org accounts
Access settings via the ⚙️ gear icon in the popover or ⌘,
| Setting | Description |
|---|---|
| Stripe Secret Key | Your Stripe API secret key |
| Polar Access Token | Your Polar.sh organization access token |
| Polar Organization ID | (Optional) Filter by specific organization |
| Refresh Interval | How often to fetch new data (1-60 min) |
- API keys are stored in macOS Keychain - encrypted and secure
- No analytics or tracking - your data stays on your machine
- No external servers - direct API calls to Stripe/Polar only
- Open source - audit the code yourself
- SwiftUI - Modern declarative UI framework
- Combine - Reactive data handling
- URLSession - Native networking
- Security.framework - Keychain storage
MRR Bar/
├── MRR_BarApp.swift # App entry point & menu bar setup
├── MenuBarView.swift # Main popover UI
├── SettingsView.swift # Settings window
├── RevenueManager.swift # Business logic & API calls
├── KeychainHelper.swift # Secure storage utilities
└── Assets.xcassets/ # App icons and images
Contributions are welcome! Please read our Contributing Guide before submitting a PR.
- Add API integration in
RevenueManager.swift - Create a new
fetchXXXData()method - Add corresponding
@Publishedproperties - Update
MenuBarView.swiftto display the new platform - Add settings fields in
SettingsView.swift - Update
KeychainHelperkeys if needed
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Lemon Squeezy integration
- Gumroad integration
- Multiple currency support
- Menu bar revenue display option
- Notifications for new sales
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with SwiftUI
- Icons from SF Symbols
- Inspired by the indie hacker community
- ⭐ Star this repo if you find it useful
- 🐛 Report bugs
- 💡 Request features
- 🐦 Follow @yourusername for updates
Made with ❤️ for indie hackers

