Skip to content

Commit 6185da2

Browse files
Add issue templates, CI/CD workflows, and release automation
1 parent c301345 commit 6185da2

5 files changed

Lines changed: 185 additions & 97 deletions

File tree

Lines changed: 19 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,40 @@
11
---
22
name: 🐛 Bug Report
3-
about: Create a report to help us improve
4-
title: '[BUG] '
5-
labels: ['bug', 'needs-triage']
6-
assignees: ['muhittincamdali']
7-
3+
about: Report a bug to help us improve
4+
title: "[BUG] "
5+
labels: bug
6+
assignees: muhittincamdali
87
---
98

109
## 🐛 Bug Description
11-
1210
A clear and concise description of what the bug is.
1311

14-
## 🔄 Steps to Reproduce
12+
## 📱 Environment
13+
- **iOS Version:**
14+
- **Xcode Version:**
15+
- **Swift Version:**
16+
- **Device:** (iPhone 15, Simulator, etc.)
1517

18+
## 🔄 Steps to Reproduce
1619
1. Go to '...'
17-
2. Click on '....'
18-
3. Scroll down to '....'
20+
2. Click on '...'
21+
3. Scroll down to '...'
1922
4. See error
2023

2124
## ✅ Expected Behavior
22-
23-
A clear and concise description of what you expected to happen.
25+
A clear description of what you expected to happen.
2426

2527
## ❌ Actual Behavior
26-
27-
A clear and concise description of what actually happened.
28-
29-
## 📱 Environment
30-
31-
**Device:**
32-
- Device: [e.g. iPhone 15, iPad Pro]
33-
- OS: [e.g. iOS 17.0, macOS 14.0]
34-
- Version: [e.g. 2.1.0]
35-
36-
**Development Environment:**
37-
- Xcode Version: [e.g. 15.0]
38-
- Swift Version: [e.g. 5.9]
39-
- SwiftUI Design System Pro Version: [e.g. 2.1.0]
28+
A clear description of what actually happened.
4029

4130
## 📸 Screenshots
42-
4331
If applicable, add screenshots to help explain your problem.
4432

45-
## 📋 Additional Context
46-
33+
## 📝 Additional Context
4734
Add any other context about the problem here.
4835

49-
## 🔍 Possible Solution
50-
51-
If you have suggestions on a fix for the bug, please describe it here.
52-
53-
## 📝 Checklist
36+
## 📋 Logs
37+
```
38+
Paste relevant logs here
39+
```
5440

55-
- [ ] I have searched the existing issues for duplicates
56-
- [ ] I have provided all the requested information
57-
- [ ] I have tested this on the latest version
58-
- [ ] I have included relevant code snippets
59-
- [ ] I have attached screenshots if applicable

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,8 @@
11
blank_issues_enabled: false
2-
contact_links: []
2+
contact_links:
3+
- name: 📖 Documentation
4+
url: https://github.com/muhittincamdali/SwiftUI-Design-System-Pro#readme
5+
about: Check out the documentation first
6+
- name: 💬 Discussions
7+
url: https://github.com/muhittincamdali/SwiftUI-Design-System-Pro/discussions
8+
about: Ask questions and discuss ideas
Lines changed: 18 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,28 @@
11
---
2-
name: 💡 Feature Request
2+
name: Feature Request
33
about: Suggest an idea for this project
4-
title: '[FEATURE] '
5-
labels: ['enhancement', 'needs-triage']
6-
assignees: ['muhittincamdali']
7-
4+
title: "[FEATURE] "
5+
labels: enhancement
6+
assignees: muhittincamdali
87
---
98

10-
## 💡 Feature Description
11-
12-
A clear and concise description of the feature you'd like to see implemented.
13-
14-
## 🎯 Problem Statement
15-
16-
A clear and concise description of what problem this feature would solve.
17-
18-
## 💭 Proposed Solution
19-
20-
A clear and concise description of what you want to happen.
21-
22-
## 🔄 Alternative Solutions
23-
24-
A clear and concise description of any alternative solutions or features you've considered.
25-
26-
## 📱 Use Cases
27-
28-
Describe the specific use cases where this feature would be beneficial:
29-
30-
1. **Use Case 1**: [Description]
31-
2. **Use Case 2**: [Description]
32-
3. **Use Case 3**: [Description]
33-
34-
## 🎨 Design Considerations
35-
36-
If applicable, describe any design considerations:
37-
38-
- **UI/UX**: How should this feature look and behave?
39-
- **Accessibility**: What accessibility considerations should be made?
40-
- **Performance**: Any performance implications?
41-
- **Platform Support**: Should this work on all platforms (iOS, macOS, watchOS, tvOS)?
42-
43-
## 📋 Implementation Details
9+
## 🚀 Feature Description
10+
A clear and concise description of the feature you'd like.
4411

45-
If you have any thoughts on implementation:
12+
## 💡 Motivation
13+
Why is this feature important? What problem does it solve?
4614

47-
- **Component Type**: Is this a new component, modification to existing, or utility?
48-
- **Dependencies**: Any external dependencies required?
49-
- **Configuration**: What configuration options should be available?
15+
## 📋 Proposed Solution
16+
Describe the solution you'd like.
5017

51-
## 📸 Mockups/Wireframes
18+
## 🔄 Alternatives Considered
19+
Describe any alternative solutions or features you've considered.
5220

53-
If applicable, add mockups or wireframes to help visualize the feature.
21+
## 📝 Additional Context
22+
Add any other context or screenshots about the feature request here.
5423

55-
## 📝 Checklist
24+
## ✅ Acceptance Criteria
25+
- [ ] Criteria 1
26+
- [ ] Criteria 2
27+
- [ ] Criteria 3
5628

57-
- [ ] I have searched the existing issues for duplicates
58-
- [ ] I have provided a clear problem statement
59-
- [ ] I have described the proposed solution
60-
- [ ] I have considered alternative solutions
61-
- [ ] I have provided use cases
62-
- [ ] I have included mockups if applicable
63-
- [ ] This feature aligns with the project's goals

.github/workflows/ci.yml

Lines changed: 80 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,87 @@ name: CI
22

33
on:
44
push:
5-
branches: [ "main", "master" ]
5+
branches: [ main, develop ]
66
pull_request:
7-
branches: [ "main", "master" ]
7+
branches: [ main ]
88

99
jobs:
10-
noop:
11-
runs-on: ubuntu-latest
10+
build:
11+
name: Build and Test
12+
runs-on: macos-14
13+
14+
strategy:
15+
matrix:
16+
xcode: ['15.4']
17+
destination: ['platform=iOS Simulator,name=iPhone 15,OS=17.5']
18+
1219
steps:
13-
- run: echo "Build temporarily disabled per repository policy"
20+
- name: Checkout
21+
uses: actions/checkout@v4
22+
23+
- name: Select Xcode
24+
run: sudo xcode-select -switch /Applications/Xcode_${{ matrix.xcode }}.app
25+
26+
- name: Show Xcode Version
27+
run: xcodebuild -version
28+
29+
- name: Cache Swift Packages
30+
uses: actions/cache@v4
31+
with:
32+
path: .build
33+
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
34+
restore-keys: |
35+
${{ runner.os }}-spm-
36+
37+
- name: Build
38+
run: |
39+
set -o pipefail
40+
xcodebuild build \
41+
-scheme ${{ github.event.repository.name }} \
42+
-destination "${{ matrix.destination }}" \
43+
CODE_SIGN_IDENTITY="" \
44+
CODE_SIGNING_REQUIRED=NO \
45+
| xcpretty
46+
47+
- name: Run Tests
48+
run: |
49+
set -o pipefail
50+
xcodebuild test \
51+
-scheme ${{ github.event.repository.name }} \
52+
-destination "${{ matrix.destination }}" \
53+
CODE_SIGN_IDENTITY="" \
54+
CODE_SIGNING_REQUIRED=NO \
55+
| xcpretty
56+
continue-on-error: true
57+
58+
swift-build:
59+
name: Swift Package Build
60+
runs-on: macos-14
61+
62+
steps:
63+
- name: Checkout
64+
uses: actions/checkout@v4
65+
66+
- name: Build Package
67+
run: swift build -v
68+
continue-on-error: true
69+
70+
- name: Run Package Tests
71+
run: swift test -v
72+
continue-on-error: true
73+
74+
lint:
75+
name: SwiftLint
76+
runs-on: macos-14
77+
78+
steps:
79+
- name: Checkout
80+
uses: actions/checkout@v4
81+
82+
- name: Install SwiftLint
83+
run: brew install swiftlint
84+
85+
- name: Run SwiftLint
86+
run: swiftlint lint --reporter github-actions-logging
87+
continue-on-error: true
88+

.github/workflows/release.yml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
name: Create Release
14+
runs-on: macos-14
15+
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
22+
- name: Build Package
23+
run: swift build -c release
24+
continue-on-error: true
25+
26+
- name: Generate Changelog
27+
id: changelog
28+
run: |
29+
# Get the previous tag
30+
PREV_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
31+
32+
if [ -z "$PREV_TAG" ]; then
33+
CHANGELOG=$(git log --pretty=format:"- %s" HEAD)
34+
else
35+
CHANGELOG=$(git log --pretty=format:"- %s" $PREV_TAG..HEAD)
36+
fi
37+
38+
echo "changelog<<EOF" >> $GITHUB_OUTPUT
39+
echo "$CHANGELOG" >> $GITHUB_OUTPUT
40+
echo "EOF" >> $GITHUB_OUTPUT
41+
42+
- name: Create Release
43+
uses: softprops/action-gh-release@v2
44+
with:
45+
body: |
46+
## What's Changed
47+
${{ steps.changelog.outputs.changelog }}
48+
49+
## Installation
50+
51+
### Swift Package Manager
52+
```swift
53+
dependencies: [
54+
.package(url: "https://github.com/muhittincamdali/${{ github.event.repository.name }}.git", from: "${{ github.ref_name }}")
55+
]
56+
```
57+
draft: false
58+
prerelease: ${{ contains(github.ref_name, 'alpha') || contains(github.ref_name, 'beta') || contains(github.ref_name, 'rc') }}
59+
env:
60+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
61+

0 commit comments

Comments
 (0)