Thanks for your interest in contributing to SaneUI, the shared UI component library for Sane Apps!
SaneUI is a Swift Package containing shared UI components, styles, and brand assets used across all Sane Apps (SaneBar, SaneClip, SaneVideo, SaneSync, SaneHosts).
Part of the Sane Apps family - See saneapps.com
# Clone the repo
git clone https://github.com/sane-apps/SaneUI.git
cd SaneUI
# Build and test
swift build
swift test- macOS 14.0+
- Xcode 16+
- Swift 6.0+
In the app's Package.swift or Xcode project:
.package(path: "../Projects/SaneUI")SaneUI/
├── Sources/SaneUI/
│ ├── Colors/ # Brand color definitions
│ ├── Typography/ # Font styles
│ ├── Components/ # Reusable UI components
│ └── Extensions/ # SwiftUI extensions
├── Tests/
└── Package.swift
SaneUI implements the Sane Apps Brand Guidelines:
- Navy:
#1a2744- Logo background, dark surfaces - Glowing Teal:
#5fa8d3- Accents, CTAs - Surface Colors: Void, Carbon, Smoke, Stone, Cloud, White
- Primary: SF Pro Display (system font)
- Code: SF Mono
All components should embody:
- Power: User control, not extraction
- Love: Built to serve, not manipulate
- Sound Mind: Clear, calm design
- Swift 5.9+ features encouraged
- @Observable instead of @StateObject
- Swift Testing framework for tests
- Keep components focused and reusable
- Document public APIs with comments
- Include previews for SwiftUI components
- Follow existing naming conventions
- Check if the component already exists
- Consider if it belongs in SaneUI (shared) or the specific app
- Fork the repository
- Create a branch from
main - Make your changes following the coding standards
- Run tests:
swift test - Submit PR with clear description
- Open an issue on GitHub
- See the Sane Apps documentation
Are you tired of waiting on the dev to get around to fixing your problem?
Do you have a great idea that could help everyone in the community, but think you can't do anything about it because you're not a coder?
Good news: you actually can.
Copy and paste this into Claude or Codex, then describe your bug or idea:
I want to contribute to this repo, but I'm not a coder.
Repository:
https://github.com/sane-apps/SaneUI
Bug or idea:
[Describe your bug or idea here in plain English]
Please do this for me:
1) Understand and reproduce the issue (or understand the feature request).
2) Make the smallest safe fix.
3) Open a pull request to https://github.com/sane-apps/SaneUI
4) Give me the pull request link.
5) Open a GitHub issue in https://github.com/sane-apps/SaneUI/issues that includes:
- the pull request link
- a short summary of what changed and why
6) Also give me the exact issue link.
Important:
- Keep it focused on this one issue/idea.
- Do not make unrelated changes.
If needed, you can also just email the pull request link to hi@saneapps.com.
I review and test every pull request before merge.
If your PR is merged, I will publicly give you credit, and you'll have the satisfaction of knowing you helped ship a fix for everyone.