Development Setup
May 29, 2025 · View on GitHub
This guide will help you set up your development environment for contributing to Blankie.
Prerequisites
- macOS 14.6 or later
- Xcode 16 or later
- An Apple Developer account (free or paid)
Setup Instructions
-
Fork and clone the repository
git clone https://github.com/YOUR_USERNAME/blankie.git cd blankie -
Configure your development environment
Copy the example configuration file:
cp Configuration.example.xcconfig Configuration.xcconfigImportant:
Configuration.xcconfigis ignored by git to keep Bundle IDs and Team IDs private. Never commit this file. -
Add your development team
Edit
Configuration.xcconfigand add your Team ID:DEVELOPMENT_TEAM = YOUR_TEAM_ID_HEREFinding your Team ID:
-
Apple Developer Program Members:
- Open Xcode → Preferences → Accounts
- Sign in with your Apple ID
- Select your account and click "Manage Certificates"
- Your Team ID is listed under your account name
-
Personal Team (Free):
- Open Xcode → Preferences → Accounts
- Click "+" to add your Apple ID
- Xcode will create a Personal Team automatically
- Your Personal Team ID will be listed there
-
-
Set a unique Bundle Identifier
In
Configuration.xcconfig, set a unique identifier:PRODUCT_BUNDLE_IDENTIFIER = com.yournamehere.blankieNote: You cannot use the same bundle identifier as the official Blankie app.
-
Open and build the project
open Blankie.xcodeprojThen build and run using Xcode (⌘+R).
Code Style
- We try to follow the Swift API Design Guidelines
- Use
swift-formatwith default settings- In Xcode: Editor → Structure → Format File with 'swift-format'
- Or use the command line tool
- Match existing code patterns and conventions
- Write clear commit messages explaining your changes
Testing
- Run existing unit tests: ⌘+U in Xcode
- Add tests for new functionality when possible
- Test your changes thoroughly before submitting a PR
Important Considerations
⚠️ Exercise extreme caution when modifying:
- Sound configurations
- Naming conventions
- Preset functionality
These directly affect user settings and even small changes can significantly impact the user experience.
Submitting Changes
- Create a feature branch
- Make your changes following the guidelines above
- Test thoroughly
- Submit a pull request with:
- Clear description of changes
- Reference to any related issues (
Closes #123) - Screenshots for UI changes
For more details, see our Contributing Guidelines.