swiff-ios
1
总安装量
1
周安装量
#49247
全站排名
安装命令
npx skills add https://github.com/narenreddy2302/swiff_ios --skill swiff-ios
Agent 安装分布
cursor
1
kimi-cli
1
codex
1
claude-code
1
antigravity
1
gemini-cli
1
Skill 文档
Swiff iOS Development Assistant
Purpose
Use this skill when working on the Swiff iOS project to ensure consistency with established patterns, architecture, and coding standards. The skill includes expertise in:
- SwiftUI declarative UI development
- SwiftData persistence and migrations
- MVVM architecture with service layer
- WidgetKit home screen widgets
- iOS notifications and background tasks
- Subscription and expense management features
- Group expense splitting and calculations
- Security best practices for financial apps
- Accessibility standards
- Performance optimization
When to Use This Skill
Invoke this skill when:
- Starting work on any Swiff iOS feature or bug fix
- Understanding the project architecture and structure
- Implementing new views, models, or services
- Working with subscriptions, transactions, or group expenses
- Adding widgets or notifications
- Performing code reviews
- Handling data migrations
- Implementing security or accessibility features
- Optimizing performance
- Writing tests
Project Context
Swiff iOS is a comprehensive subscription and expense management app built with:
- SwiftUI for modern declarative UI
- SwiftData for data persistence (iOS 17+)
- Combine for reactive programming
- WidgetKit for home screen widgets
Core Features
- Subscription Management – Track recurring subscriptions with renewal reminders
- Expense Tracking – Log and categorize transactions
- Group Expenses – Split bills and track balances
- Analytics – Spending trends and forecasting
- Notifications – Renewal reminders and alerts
- Widgets – Quick access home screen widgets
Architecture Pattern
The project follows MVVM + Services pattern:
- Models: DataModels (domain) + SwiftDataModels (persistence)
- ViewModels: Service layer (DataManager, PersistenceService, etc.)
- Views: SwiftUI views with reusable components
Key Guidelines
Code Style
- Use
@MainActorfor services that interact with UI - Prefer
@Publishedproperties in services for reactive updates - Follow Swift naming conventions (PascalCase for types, camelCase for variables)
- Use comprehensive error handling with typed errors
Architecture
- Keep business logic in Services layer, not in Views
- Use domain models (DataModels) for business logic
- Convert between domain and persistence models explicitly
- Inject DataManager via
@EnvironmentObject
Testing
- Write unit tests for business logic and calculations
- Test error conditions and edge cases
- Mock services for isolated testing
- Use SwiftUI previews for UI testing
Security
- Sanitize all user inputs
- Use biometric authentication for sensitive operations
- Encrypt sensitive data at rest
- Follow OWASP mobile security guidelines
Performance
- Use lazy loading for lists
- Implement efficient SwiftData queries
- Minimize view updates with proper state management
- Profile and optimize widget updates
Available Detailed Skills
The project includes specialized skills in .claude/skills/:
project-context.md– Project overview and navigationmvvm-architecture.md– Architecture patterns and guidelinesswiftui.md– SwiftUI best practicesswiftdata.md– Data persistence patternsservice-layer.md– Service implementation guidelinessubscription-expense.md– Business logic for subscriptions/expenseswidgets.md– WidgetKit implementationnotifications.md– Notification handlingsecurity.md– Security best practicesaccessibility.md– Accessibility standardsperformance.md– Performance optimizationtesting.md– Testing strategieserror-handling.md– Error managementui-design.md– UI/UX guidelinescode-review.md– Code review checklist
Example Usage
When adding a new feature:
- Review project-context.md for structure
- Follow patterns in mvvm-architecture.md
- Implement using swiftui.md and swiftdata.md guidelines
- Add tests per testing.md
- Ensure accessibility.md compliance
- Review against code-review.md checklist