diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 000000000..90c8940b2 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,18 @@ +# Default owner for everything in the repo +* @Kyle-Ye + +# AppKit / macOS related code +**/AppKit/ @Kyle-Ye @Mx-Iris +**/*AppKit* @Kyle-Ye @Mx-Iris +**/macOS/ @Kyle-Ye @Mx-Iris +**/macos/ @Kyle-Ye @Mx-Iris +**/*macOS* @Kyle-Ye @Mx-Iris +**/*macos* @Kyle-Ye @Mx-Iris + +# UIKit / iOS related code +**/UIKit/ @Kyle-Ye +**/*UIKit* @Kyle-Ye +**/iOS/ @Kyle-Ye +**/ios/ @Kyle-Ye +**/*iOS* @Kyle-Ye +**/*ios* @Kyle-Ye diff --git a/README.md b/README.md index 3ce2169cc..451cba677 100644 --- a/README.md +++ b/README.md @@ -88,13 +88,14 @@ for various platforms: ### Platform Support -| **Platform** | **CI Status** | **Support Status** | Build | Test | Deploy | -|-|:-|-|-|-|-| -| **macOS** | [![macOS](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/macos.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/macos.yml) | ⭐️⭐️⭐️ *[^1] | ✅ | ✅ | ✅ | -| **iOS** | [![iOS](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ios.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ios.yml) | ⭐️⭐️⭐️⭐️ *[^2] | ✅ | ✅ | ✅ | -| **Ubuntu 22.04** | [![Ubuntu](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ubuntu.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ubuntu.yml) | ⭐️⭐️ *[^3] | ✅ | ✅ | ❌ | -| **Windows** | None | Not supported yet | ❌ | ❌ | ❌ | - +| **Platform** | **CI Status** | **Support Status** | Build | Test | Deploy | Owner | +|-|:-|-|-|-|-|-| +| **macOS** | [![macOS](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/macos.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/macos.yml) | ⭐️⭐️⭐️ *[^1] | ✅ | ✅ | ✅ | [@Kyle-Ye](https://github.com/Kyle-Ye), [@Mx-Iris](https://github.com/Mx-Iris) | +| **iOS** | [![iOS](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ios.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ios.yml) | ⭐️⭐️⭐️⭐️ *[^2] | ✅ | ✅ | ✅[^5] | [@Kyle-Ye](https://github.com/Kyle-Ye) | +| **visionOS** | None | ⭐️ *[^4] | ✅ | ✅ | ✅[^5] | [@Kyle-Ye](https://github.com/Kyle-Ye) | +| **Ubuntu 22.04** | [![Ubuntu](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ubuntu.yml/badge.svg)](https://github.com/OpenSwiftUIProject/OpenSwiftUI/actions/workflows/ubuntu.yml) | ⭐️⭐️ *[^3] | ✅ | ✅ | ❌ | [@Kyle-Ye](https://github.com/Kyle-Ye) | +| **Android** | None | Not supported yet | ❌ | ❌ | ❌ | | +| **Windows** | None | Not supported yet | ❌ | ❌ | ❌ | | [^1]: AppKit intergration is partly implemented. Render is support via SwiftUI's render implementation. Other UI framework backend is not intergrated yet. @@ -104,6 +105,8 @@ for various platforms: [^4]: Build is supported. Test is not supported yet dut to upstream issue. +[^5]: Only Simulator is supported. Real device support is not available yet due to the link issue of AttributeGraph. + > [!NOTE] > The cross-platform OpenAttributeGraph is not fully implemented. > @@ -112,6 +115,9 @@ for various platforms: > So most of the core feature is only available on Apple platform built with > AttributeGraph varient. +> [!NOTE] +> To request platform ownership, please first contribute to the target platform and then contact the project owner. + ### Current supported feature - Color/Image/Path rendering (Text is not supported yet) @@ -120,6 +126,10 @@ for various platforms: - onAppear/onDisappear modifier - Basic geometry effect +## Architecture + +![OpenSwiftUI Architecture](Screenshots/Architecture/arch.png) + ## Products - OpenSwiftUI diff --git a/Screenshots/Architecture/arch.png b/Screenshots/Architecture/arch.png new file mode 100644 index 000000000..7f63b084c Binary files /dev/null and b/Screenshots/Architecture/arch.png differ