Skip to content

Instantly share code, notes, and snippets.

View okwasniewski's full-sized avatar
💭
💻

Oskar Kwaśniewski okwasniewski

💭
💻
View GitHub Profile
@okwasniewski
okwasniewski / ReactNativeView.swift
Created September 30, 2024 14:18
ReactNativeView.swift
struct ReactNativeView: UIViewRepresentable {
var moduleName: String
var rootViewFactory: RCTRootViewFactory
func makeUIView(context: Context) -> UIView {
return rootViewFactory.view(withModuleName: moduleName)
}
func updateUIView(_ uiView: UIView, context: Context) {
// noop
AppRegistry.registerComponent('ReactNativeScreen', () => App)
rootViewFactory.view(withModuleName: moduleName, initialProperties: ["prop1": "test"])
const ReactNativeScreen = ({ prop1 }) => // ...
@main
struct BrownfieldSwiftUIApp: App {
@UIApplicationDelegateAdaptor var delegate: AppDelegate
var body: some Scene {
WindowGroup {
TabView {
ContentView()
.tabItem {
Label("Home", systemImage: "house")
@okwasniewski
okwasniewski / Podfile
Created January 16, 2025 08:19
swift-modular-headers-blog-post-1
target 'MyApp' do
pod 'SomeLibrary'
end
@okwasniewski
okwasniewski / Podfile
Created January 16, 2025 08:20
swift-modular-headers-blog-post-2
target 'MyApp' do
pod 'SomeLibrary', :modular_headers => true
end
@okwasniewski
okwasniewski / Podfile
Created January 16, 2025 08:20
swift-modular-headers-blog-post-3
target 'MyApp' do
config = use_native_modules!
use_react_native!(
:path => config[:reactNativePath],
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
# ...
@okwasniewski
okwasniewski / Podfile
Created January 16, 2025 08:21
swift-modular-headers-blog-post-4
plugin 'cocoapods-swift-modular-headers'
# Above target declarations
apply_modular_headers_for_swift_dependencies()
@okwasniewski
okwasniewski / Podfile
Created January 16, 2025 08:21
swift-modular-headers-blog-post-5
plugin 'cocoapods-swift-modular-headers'
pre_install do |installer|
apply_modular_headers_for_swift_dependencies(installer)
end