Skip to content
Open

1 #1

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
7a9f013
Hi, I find that the LineChartView has a value is static (#15)
sy1995 Nov 11, 2019
3f542f9
Added LineView
AppPear Nov 11, 2019
e5c309e
set to public
AppPear Nov 11, 2019
e081d3a
fixed loupe
AppPear Nov 11, 2019
6cc43d9
fixed legend in dark mode
AppPear Nov 11, 2019
d3d0b08
updated readme
AppPear Nov 11, 2019
1b45a6a
Update README.md
AppPear Nov 11, 2019
b5e3aa8
added self
AppPear Nov 13, 2019
9fa7e20
Merge remote-tracking branch 'refs/remotes/origin/master'
AppPear Nov 13, 2019
20fb782
quick fix for 0 elements in line view
AppPear Nov 13, 2019
fd14ca2
Allow graphs to accept Double (#19)
szweier Nov 24, 2019
0d95dbd
Fixed: Form redeclaration as ChartForm issue #23
AppPear Dec 12, 2019
03f9072
solved line view negative numbers, also when it crashed 0 or 1 elemen…
AppPear Dec 27, 2019
524aec2
Fixed Issue 28 (#29)
iRick92 Dec 28, 2019
9f2e3d3
Fixed Xcode typo in README (#32)
weitieda Jan 5, 2020
04b6e38
Fixed chart clipping, and value animation issue
AppPear Jan 7, 2020
f7d9895
Merge remote-tracking branch 'refs/remotes/origin/master'
AppPear Jan 7, 2020
1e362b9
Added Label,Value pairs so you can display a label for each point in …
AppPear Jan 11, 2020
6b5affa
Update README.md (#33)
mcgloch Jan 16, 2020
75df39f
Fix animation undoing itself by multiple calls of toggle() (#35)
barclayd Jan 17, 2020
37c51d9
Fix llvm segfault when archiving SwiftUICharts (#36)
kfowler Jan 17, 2020
88db9ae
Fix line chart view indicator point (#40)
xspyhack Jan 22, 2020
80d546d
fixed lineview for small negative numbers
AppPear Feb 13, 2020
ba5bc4f
Fixed barchart crashing for empty array
AppPear Feb 13, 2020
37779e1
added a darkmodestyle so you can customize darkmode appearance for li…
AppPear Feb 13, 2020
841bde1
Fixed infinite size compile error
AppPear Feb 13, 2020
47731bf
Added cutom darkmode style description
AppPear Feb 13, 2020
2a1b55f
Adding multiline chartview and straight linechart
AppPear Mar 3, 2020
a8b4101
Merge remote-tracking branch 'refs/remotes/origin/master'
AppPear Mar 3, 2020
b230ed0
Fix to use dark mode settings for barchatview label text. (#47)
andrw Mar 3, 2020
6a9546b
added id: self in ForEach for dynamic content in BarChartRow (#49)
ftlno Mar 3, 2020
257e5fc
Fixed global max and min for multiline chartview
AppPear Mar 3, 2020
7365bc9
Added MultiLineChartView, fixed LineView legend disappearing on navig…
AppPear Mar 4, 2020
04989ad
Updated ReadMe with multilinechartview
AppPear Mar 4, 2020
75804f4
Customisable drop shadow color (#53)
AppPear Mar 5, 2020
c12c773
fixed unwrap error
AppPear Mar 17, 2020
a242bd3
Making GradientColor's init method as public (#63)
dellacqp Apr 26, 2020
fada162
change rateValue to optional to fix crash from force unwraps and set …
May 7, 2020
dd7a1fc
Line view custom gradient (#67)
platadani May 18, 2020
d869e41
Replace the old with a more sleek and flexible code architecture
AppPear May 22, 2020
fa8e015
adds issue templates (#88)
LucasCarioca May 22, 2020
068ea84
adds pr template (#90)
LucasCarioca May 22, 2020
0303c3c
Update README.md
AppPear May 24, 2020
ebd09f4
Fix issue templates (#92)
LucasCarioca May 24, 2020
5cd5858
Added a first implementation of BarChart and LineChart also introduce…
AppPear May 24, 2020
640ddeb
Create v2Ticket
AppPear May 24, 2020
3447d5c
Rename v2Ticket to v2Ticket.md
AppPear May 24, 2020
b5b7c62
Update v2Ticket.md
AppPear May 24, 2020
22a38a1
Update README.md
AppPear May 24, 2020
a2d75dc
Write unit tests for CGPoint+Extension.swift (#100)
AdrianBinDC May 25, 2020
aa91264
Add PieChart + multicolor (#98)
satan87 May 25, 2020
b5beab5
removed .rotate for foreGroundColor
AppPear May 25, 2020
99b952f
Restore rotating index for multicolor (#102)
satan87 May 26, 2020
4963ec5
Write unit tests for Color+Extension.swift (#101)
AdrianBinDC May 26, 2020
f2866ae
Syntax corrections (#105)
satan87 May 28, 2020
0caebce
added mac os as a build target
AppPear May 28, 2020
82e8f24
Create swift.yml
AppPear May 28, 2020
c89b1e1
Update Package.swift
AppPear May 28, 2020
24cf9ea
Update README.md (#106)
satan87 May 28, 2020
d64d0e9
Bug Fix: Bar Chart with [0] crashed (#110)
satan87 May 30, 2020
7568c5d
Bug Fix - only 0 data (#109)
satan87 May 30, 2020
f0eea58
Add CardView and CardLabel (#111)
AppPear May 30, 2020
74140af
Add extra large size (#108)
satan87 May 31, 2020
27e7e0d
Bigger scale (#113)
satan87 Jun 16, 2020
dff16e8
Creating a data structure which propagets changes in data to the char…
AppPear Jun 21, 2020
ca19dd5
Cleanup the explicitly unwrapped parameters which had a default value…
rodericj Jun 27, 2020
a36c1db
Update README.md
AppPear Jun 27, 2020
4705267
Builded with xcode 12
AppPear Jun 28, 2020
57ac969
Added ChartLabel interaction
AppPear Jun 28, 2020
c6610f5
Fixed control flow error
AppPear Jul 5, 2020
c46902d
Refactor Chart base (#143)
AppPear Jul 25, 2020
3265d3e
Add public modifier to ChartColors and add showShadow property
AppPear Jul 25, 2020
812e028
Update README.md
AppPear Jul 25, 2020
6c612fa
Fix typo (#144)
cs4alhaider Jul 26, 2020
7fb2a00
Fix cornerMasking on card view when no shadow is set
AppPear Jul 29, 2020
2ef73c8
Dark/Light mode fixes (#148)
sagar5534 Jul 31, 2020
6c768ad
created interaction for PieChart (#147)
Lebron1992 Aug 1, 2020
4699847
Fixed missing self in piechartrow
AppPear Aug 1, 2020
ed01f53
recalculate geometry if orientation has changed (#156)
danwood Aug 24, 2020
51db5a0
Issue 99 documentation (#159)
danwood Aug 24, 2020
8ee353c
Activity-type Rings charts (#161)
danwood Aug 24, 2020
9210d01
V2 beta 2 changes (#150)
AppPear Aug 24, 2020
84578d2
Add a public init() to RingsChart
AppPear Aug 24, 2020
08f0053
update slack link
AppPear Sep 23, 2020
5aa8cdf
macOS support: v11 only. Swift tools bumped to 5.3 (#183)
willtemperley Mar 24, 2021
29700ff
made cornerImage optional (#76)
Mar 26, 2021
5c49a55
fix(LineChartView): fixed linechart shifting down
AppPear Mar 26, 2021
9249098
[WIP]Add an option to animate to back position (BarChart). (#171)
fummicc1 Mar 26, 2021
1f4949a
Bugfix: Draw Lines (#173)
magicmikek Mar 26, 2021
eca6eda
Bugfix: Line height in LineView (#175)
willdale Mar 26, 2021
9115a99
Add legend format specifier option in LineView (#186)
Cljak10 Mar 26, 2021
7861bbc
feat(core): refactoring chart dispalying (#191)
AppPear Jun 9, 2021
caa75ec
feat: add linechart interaction point (#202)
AppPear Aug 11, 2021
aecfdc5
Add id in ForEach in MultiLineChartView for dynamic content (#203)
kugo12 Aug 11, 2021
a4381e0
modify LineChartView rateValue set code (#200)
auburn0820 Aug 11, 2021
6acb264
Update README.md
AppPear Aug 25, 2021
c360f8a
Update README.md
AppPear Aug 25, 2021
13ab3af
feat: move images from resource folder to cloud (#208)
AppPear Aug 28, 2021
102b51b
feat: added wiki article links to readme
AppPear Aug 28, 2021
bd29afc
fix: BarChartCellShape to handle negative numbers correctly (#250)
AppPear Sep 3, 2022
d7e9802
fix: remove UIColors which caused CI build errors (#251)
AppPear Sep 3, 2022
ebaaf81
feat: new protocol for chained functions, and added support for expli…
AppPear Oct 24, 2022
7fd5b18
Feat/new protocol and range (#255)
AppPear Nov 26, 2022
7140b8b
feat: add animation toggle interface (#256)
AppPear Nov 26, 2022
0879fb2
Refactor composable API and unify x-axis alignment
AppPear Mar 1, 2026
ffddd1f
Ignore Xcode workspace user data for showcase app
AppPear Mar 1, 2026
688ddaf
Improve dark mode defaults and showcase styling
AppPear Mar 1, 2026
7c63009
Add line chart drag interaction and showcase card
AppPear Mar 1, 2026
f1897fa
Add legend-driven series visibility controls
AppPear Mar 1, 2026
e91c2b9
Add streaming data source with windowed auto-scroll
AppPear Mar 1, 2026
0724f18
Add auto axis ticks with collision handling and rotation
AppPear Mar 1, 2026
28f4a50
Improve accessibility metadata and add high-contrast presets
AppPear Mar 1, 2026
609a392
feat: add chart performance mode with line downsampling
AppPear Mar 1, 2026
ca55ba0
feat: add callback-based chart selection events
AppPear Mar 1, 2026
55d3a6c
feat: add tab-based showcase app with dynamic data lab
AppPear Mar 1, 2026
3b7a09f
Merge branch 'new-version' into master
AppPear Mar 2, 2026
2a15724
Add Apple privacy manifest for SwiftUICharts SDK
AppPear Mar 2, 2026
a84f885
Update 2.0.0 docs, migration, and usage guide
AppPear Mar 2, 2026
df0b264
Add wiki docs and AI-agent-friendly README
AppPear Mar 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---
<!--- Provide a general summary of the issue in the Title above -->



## Description
<!--- Provide a more detailed introduction to the issue itself, and why you consider it to be a bug -->

## Expected Behavior
<!--- Tell us what should happen -->

## Actual Behavior
<!--- Tell us what happens instead -->

## Possible Fix
<!--- Not obligatory, but suggest a fix or reason for the bug -->

## Steps to Reproduce
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->

## Your Environment
<!--- Include as many relevant details about the environment -->
* Version of this package used:
* Device/Simulator:
* Operating System and version:
* Link to your project:
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Ask for a new feature
title: ''
labels: ''
assignees: ''

---

<!--- Provide a general summary of the issue in the Title above -->

## Detailed Description
<!--- Provide a detailed description of the change or addition you are proposing -->

## Context
<!--- Why is this change important to you? How would you use it? -->
<!--- How can it benefit other users? -->

## Possible Implementation
<!--- Not obligatory, but suggest an idea for implementing addition or change -->
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/v2Ticket.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: v2 ticket
about: Create tasks for the upcoming new version
title: ''
labels: v2
assignees: ''

---
# v2 ticket

## Ticket description:
29 changes: 29 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->

## Motivation and Context
<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->

## How Has This Been Tested?
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots (if appropriate):

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] Non-functional change (Updating Documentation, CI automation, etc..)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
34 changes: 34 additions & 0 deletions .github/workflows/swift.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Swift

on:
push:
branches: [ master, new-version ]
pull_request:

jobs:
build-and-test:
runs-on: macos-latest

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Select Xcode
run: sudo xcode-select -s /Applications/Xcode.app

- name: Build
run: swift build

- name: Test
run: swift test

- name: Build Showcase App
run: |
cd Examples/SwiftUIChartsShowcase
xcodebuild \
-project SwiftUIChartsShowcase.xcodeproj \
-scheme SwiftUIChartsShowcase \
-sdk iphonesimulator \
-destination "generic/platform=iOS Simulator" \
CODE_SIGNING_ALLOWED=NO \
build
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,5 @@
/.build
/Packages
/*.xcodeproj
**/*.xcodeproj/project.xcworkspace/xcuserdata/
**/*.xcworkspace/xcuserdata/
64 changes: 64 additions & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
disabled_rules:
- explicit_acl
- trailing_whitespace
- force_cast
- unused_closure_parameter
- multiple_closures_with_trailing_closure
opt_in_rules:
- anyobject_protocol
- array_init
- attributes
- collection_alignment
- colon
- conditional_returns_on_newline
- convenience_type
- empty_count
- empty_string
- empty_collection_literal
- enum_case_associated_values_count
- function_default_parameter_at_end
- fatal_error_message
- file_name
- first_where
- modifier_order
- toggle_bool
- unused_private_declaration
- yoda_condition
excluded:
- Carthage
- Pods
- SwiftLint/Common/3rdPartyLib
identifier_name:
excluded:
- a
- b
- c
- i
- id
- t
- to
- x
- y
line_length:
warning: 150
error: 200
ignores_function_declarations: true
ignores_comments: true
ignores_urls: true
function_body_length:
warning: 300
error: 500
function_parameter_count:
warning: 6
error: 8
type_body_length:
warning: 300
error: 400
file_length:
warning: 500
error: 1200
ignore_comment_only_lines: true
cyclomatic_complexity:
warning: 15
error: 21
reporter: "xcode"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>SwiftUICharts.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>2</integer>
</dict>
</dict>
</dict>
</plist>
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Bucket
uuid = "91E23D30-CB6C-44DA-BEFC-9D39A1DA2242"
type = "1"
version = "2.0">
</Bucket>
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>SwiftUICharts.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>0</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>
<dict>
<key>SwiftUICharts</key>
<dict>
<key>primary</key>
<true/>
</dict>
<key>SwiftUIChartsTests</key>
<dict>
<key>primary</key>
<true/>
</dict>
</dict>
</dict>
</plist>
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Changelog

## 2.0.0

### Added

- Full SwiftUI-idiomatic modifier API:
- `chartData`, `chartXRange`, `chartYRange`
- `chartGridLines`, `chartGridStroke`, `chartGridBaseline`
- `chartXAxisLabels`, `chartYAxisLabels`, `chartAxisFont`, `chartAxisColor`
- `chartLineWidth`, `chartLineBackground`, `chartLineMarks`, `chartLineStyle`, `chartLineAnimation`
- `chartInteractionValue`
- `chartSelectionHandler`
- `chartPerformance`
- Immutable chart configuration structs and environment-key-based composition.
- Updated docs/examples and generated showcase app.
- Dynamic streaming data source support via `ChartStreamingDataSource`.
- Unified X-axis alignment strategy shared across chart layers.
- Apple privacy manifest for SDK distribution (`PrivacyInfo.xcprivacy`).

### Changed

- Major clean break from mutating chain APIs.
- Chart style/data/range/axis/grid/line configs are now modifier-driven and value-based.

### Fixed

- Removed required `@EnvironmentObject` interaction dependency for basic chart rendering paths.
- Existing regression and smoke tests remain green after API shift.

### Migration

- See `MIGRATION.md` for full old-to-new mapping.
18 changes: 18 additions & 0 deletions Examples/SwiftUIChartsShowcase/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# SwiftUICharts Showcase App

This iOS app demonstrates the current composable API features of `SwiftUICharts`:

- Line chart with marks, ranges, style, background fill, and animation
- Grid and axis labels
- Multiple overlaid line charts
- Mixed bar + line chart in one frame
- Interactive bar chart with shared `ChartValue` + `ChartLabel`
- Pie and rings charts
- Card-based composition with `CardView`

## Open in Xcode

1. `cd Examples/SwiftUIChartsShowcase`
2. `xcodegen generate`
3. Open `SwiftUIChartsShowcase.xcodeproj`
4. Run the `SwiftUIChartsShowcase` scheme on an iOS simulator
Loading